WordPress use functions.php to run function only on specific page template

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?

Related posts

Leave a Reply

1 comment

  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.