问题
I have a following code to check if current used file is tmp_home_page.php
, but when I do echo $template_file;
it is showing functions.php
add_action('template_redirect', 'are_we_home_yet', 10);
function are_we_home_yet(){
global $template;
$template_file = basename((__FILE__).$template);
if ( is_home() && $template_file == 'tmp_home_page.php' ) {
// do stuff
}
}
Any idea how to make sure that my do stuff
is only run on home page and when given template is in use?
回答1:
You're looking way too hard into this, there's a wordpress function for that. is_page_template()
if( is_page_template( 'tmp_home_page.php' ) && is_home() ){
// Do Stuff
}
Also, is_front_page() is usually a better alternative to is_home() when trying to determine if a user is viewing the Front/First Page of a WordPress site. You can see more on that subject here.
来源:https://stackoverflow.com/questions/13203329/wordpress-use-functions-php-to-run-function-only-on-specific-page-template