wordpress的get_header( )函数功能详解

功能:加载header模板。

get_header(string  $ name  =  null  )

描述

包含主题的header模板,如果指定了名称,则将包含专用header模板。

对于参数,如果文件名为“header-special.php”,则指定参数为“special”

参数

$名称

(string) (可选)   专用header文件的名称。

默认值:null

来源

文件:wp-includes / general-template.php

function get_header( $name = null ) {
    /**
     * Fires before the header template file is loaded.
     *
     * @since 2.1.0
     * @since 2.8.0 $name parameter added.
     *
     * @param string|null $name Name of the specific header file to use. null for the default header.
     */
    do_action( 'get_header', $name );
 
    $templates = array();
    $name      = (string) $name;
    if ( '' !== $name ) {
        $templates[] = "header-{$name}.php";
    }
 
    $templates[] = 'header.php';
 
    locate_template( $templates, true );
}
用途描述
wp-includes / general-template.php: get_header在加载标题模板文件之前触发。
wp-includes / plugin.php: do_action()执行hook在特定操作hook上的函数。
wp-includes / template.php: locate_template()检索存在的最高优先级模板文件的名称。

使用示例

多个标题

不同页面的不同标题。1234五6789

<?phpif ( is_home() ) :get_header( 'home' );
elseif ( is_404() ) :get_header( '404' );
else :get_header();endif;?>

主页和404标题的文件名应分别为header-home.phpheader-404.php

命名标头模板

使用$nameparam 加载备用标头文件:

<?php get_header( 'special' ); ?>

主题文件中的上述代码将加载模板文件:header-special.php。如果没有找到,将默认加载:header.php

简单404页面

以下代码是“HTTP 404:Not Found”错误的模板的简单示例(您可以在主题中包含该错误404.php)。

<?php get_header(); ?> 
<h2><?php esc_html_e( 'Error 404 - Not Found', 'textdomain' ); ?></h2> 
<?php get_sidebar(); ?>
<?php get_footer(); ?>

留下评论