Support » Themes and Templates » Difference between get_header() and include (TEMPLATEPATH . “/header.php”);

  • I have a header.php with some custom php to find out which group a page belongs to, i save this gruop name into a var.

    When using get_header(); in my main template file i cannot read the content of that var while when using include (TEMPLATEPATH . “/header.php”) i have the value at hand.

    get_header calls do_action which is a function i do not understand with my current knowledge of WordPress.

    This is not a “real” problem as i obviously can use “include” but i would like to understand why this happens. Someone willing and capable of explaining this?

Viewing 1 replies (of 1 total)
  • WP Voyager


    @notknow: Wow, that’s a good question! I have been working with the whole template tag system recently, trying to find some solutions for my site, and I would really like to know the difference also.

    I’m sure it has something to do with the fact that get_header() is a WP function, while include("whatever") is a PHP function.

    Since get_header()is defined by WordPress, it doesn’t necessarily follow the same approach as include(). It probably calls that do_action thing as part of the open modularity of WordPress. That whole modularity issue is the whole reason to have a separate header.php in the first place: it allows a persistent header for navigation, and it is a convenient place for plugins to “hook” in order to attach to every page.

    Oh well, those are still just speculations. I would appreciate it if someone knowledgeable about this whole thing could explain it for us!

    Thank you,
    MindBlender 3D

Viewing 1 replies (of 1 total)
  • The topic ‘Difference between get_header() and include (TEMPLATEPATH . “/header.php”);’ is closed to new replies.