我有一个支持自定义标题的WP主题,我可以上传任意数量的标题图像,当用户浏览网站时它会随机化,但我需要的是每个页面显示我的单个图像与该页面上的内容相关的媒体库。
我已尝试将其添加到custom-header.php
if(is_page('About')){
echo '<img src="the-path-to-image/about.jpg" />';
或者这个
<?php if(is_home) { ?>
<?php if( get_header_image() ): ?>
<div id="custom-img-header"><img src="the-path-to-image/about.jpg" alt=""
/></div>
<?php endif; ?>
<?php } ?>
但没有任何改变......
来自functions.php
的代码
require get_template_directory() . '/inc/custom-header.php';
来自header.php
的代码
<header id="masthead" class="site-header" <?php echo beluga_header_image_background(); ?> role="banner">
<div class="masthead-opacity"></div>
<div class="site-branding">
<h1 class="site-title"><a href="<?php echo esc_url( home_url( '/' ) ); ?>" rel="home"><?php bloginfo( 'name' ); ?></a></h1>
<h2 class="site-description"><?php bloginfo( 'description' ); ?></h2>
</div>
</header>
来自custom-header.php
的代码
<?php if ( get_header_image() ) : ?>
<a href="<?php echo esc_url( home_url( '/' ) ); ?>" rel="home">
<img src="<?php header_image(); ?>" width="<?php echo get_custom_header()->width; ?>" height="<?php echo get_custom_header()->height; ?>" alt="">
</a>
<?php endif; // End header image check. ?>
任何人都可以帮助我修改我应该修改的内容和位置以使其正常工作吗?
答案 0 :(得分:0)
您可以尝试对横幅标题使用以下方法:
Header.php文件
<?php
$thumb = get_the_post_thumbnail_url();
if($thumb) {
//If image is defined
$background_set = 'style="background:url('.$thumb.')"';
} else {
// If not image is defined
$background_set = '';
}
?>
<header id="masthead" class="site-header" <?php echo $background_set; ?> role="banner">
<div class="masthead-opacity"></div>
<div class="site-branding">
<h1 class="site-title"><a href="<?php echo esc_url( home_url( '/' ) ); ?>" rel="home"><?php bloginfo( 'name' ); ?></a></h1>
<h2 class="site-description"><?php bloginfo( 'description' ); ?></h2>
</div>
</header>
通过编写上面的代码,我们可以为每个帖子实现横幅图像。但是,请记住,上面的代码将从页面或帖子中搜索后缩略图图像,如果找到则将该图像作为标题横幅输出。</ p>
您可以做的最好的事情是创建一个显示在帖子上的自定义图片上传元字段。在那里上传图像,只需提取元内容数据并将其输出到header.php文件。
首先尝试上述方法并回复是否有效。谢谢。 !