Function and usage of get_header() in wordpress


Answers ( 1 )


    The get_header() function in WordPress is a template tag used to load a header template file (header.php) into your theme. It's a convenient way to include the header portion of your website across multiple theme files without duplicating code.

    Function Signature

    get_header( string $name = null, array $args = array() ): void|false

    Function Details


    • Loads Header Template: The primary function of get_header() is to include the header template (header.php) in your WordPress theme.


    • Default or Specialized Header: If no name is specified, get_header() includes the standard header.php file. If a $name is specified, WordPress looks for a file named header-{$name}.php (e.g., header-special.php for get_header('special')) and includes it instead. This feature allows you to have multiple header templates for different parts of your website.
    • Passing Additional Arguments: The $args parameter allows you to pass additional data to the header template. This can be particularly useful for customizing the header based on specific conditions or variables.


    1. $name (string, optional):
      • Specifies the name of the specialized header.
      • Default is null, which will load the standard header.php.
    2. $args (array, optional):
      • Additional arguments to pass to the header template.
      • Default is an empty array.


    • Type: void|false
    • Description: Returns void on successful inclusion of the header template. Returns false if the specified template file does not exist.

    Sample Usage

    Default Header

    To include the default header:


    This will load header.php.

    Specialized Header

    To include a specialized header, for example, a custom header for blog posts:


    This will look for and include header-blog.php.

    Passing Additional Arguments

    You can pass additional data to your header template like this:

    get_header(null, array('arg1' => 'value1', 'arg2' => 'value2'));

    This data can then be accessed within the header.php file.

    Practical Scenario

    Imagine you have a website with a standard header for most pages, but a different header for blog posts. You can create header.php for the standard header and header-blog.php for blog posts. Use get_header() in your standard templates and get_header('blog') in your blog templates.


    get_header() is a powerful WordPress function for managing headers in themes, allowing for both simplicity and flexibility in theme design.

Leave an answer