自定义徽标(Logo)

使用自定义徽标( Logo ),网站所有者可以上传其网站的图片,该图片可以放置在其网站的顶部。可以从管理面板中的“ 外观”>“页眉”上传。自定义徽标支持应先使用add_theme_support() 添加到主题中,然后使用the_custom_logo() 在主题中调用。自定义徽标是可选的,但是主题作者如果在其主题中包含徽标,则应使用此功能。

为主题添加自定义徽标支持

要在主题中启用自定义徽标,请在functions.php文件中添加以下内容:

add_theme_support( 'custom-logo' );

启用自定义徽标支持时,可以通过add_theme_support()使用数组将参数传递给函数来配置五个参数:

function themename_custom_logo_setup() {
 $defaults = array(
 'height'      => 100,
 'width'       => 400,
 'flex-height' => true,
 'flex-width'  => true,
 'header-text' => array( 'site-title', 'site-description' ),
 );
 add_theme_support( 'custom-logo', $defaults );
}
add_action( 'after_setup_theme', 'themename_custom_logo_setup' );

使用after_setup_theme挂钩,以便在加载主题之后注册自定义徽标支持。

  • height
    预期徽标高度(以像素为单位)。自定义徽标也可以使用内置的图像尺寸,例如thumbnail,或使用add_image_size() 来注册自定义尺寸。
  • width
    预期徽标宽度(以像素为单位)。自定义徽标也可以使用内置的图像尺寸,例如thumbnail,或使用add_image_size() 来注册自定义尺寸 。
  • flex-height
    是否允许灵活的高度。
  • flex-width
    是否允许灵活的宽度。
  • header-text
    要隐藏的元素的类。它可以在此处为构成页眉文本的所有元素传递一个类名数组,这些页眉文本可以用徽标替换。

在主题中显示自定义徽标

可以使用函数 the_custom_logo() 在主题中显示自定义徽标  。但是建议将代码包装在 function_exists() 调用,以保持与旧版本WordPress的向后兼容性,如下所示:

if ( function_exists( 'the_custom_logo' ) ) {
 the_custom_logo();
}

通常,徽标会添加到header.php主题文件中,但也可以在其他位置。

如果要获取当前的徽标网址(或使用自己的标记)而不是默认标记,则可以使用以下代码:

$custom_logo_id = get_theme_mod( 'custom_logo' );
$logo = wp_get_attachment_image_src( $custom_logo_id , 'full' );
if ( has_custom_logo() ) {
        echo '<img src="' . esc_url( $logo[0] ) . '" alt="' . get_bloginfo( 'name' ) . '">';
} else {
        echo '<h1>'. get_bloginfo( 'name' ) .'</h1>';
}

自定义徽标模板标签

要管理在前端显示自定义徽标,可以使用以下三个模板标签:

该文章对您有帮助吗?

暂无评论

发表评论