这里是代码,它显示了我正在使用的wordpress主题上的标题部分。
<div id="site-branding" class="clearfix">
<?php
$logo = isset($options['logo'])? $options['logo']: '';
if ($logo == ""){
$hidetitle = $options['hide_title'];
if ($hidetitle == "No") {
if(!is_home() || !is_front_page()) { ?>
<div class="site-title"><a href="<?php echo esc_url( home_url( '/' ) ); ?>" title="<?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?>"><?php bloginfo('name'); ?></a></div>
<div class="site-description"><?php bloginfo('description'); ?></div>
<?php } else { ?>
<h1 class="site-title"><a href="<?php echo esc_url( home_url( '/' ) ); ?>" title="<?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?>"><?php bloginfo('name'); ?></a></h1>
<div class="site-description"><?php bloginfo('description'); ?></div>
<?php } }
} else {
echo '<div class="site-logo"><a href="'. esc_url( home_url( '/' ) ) .'">';
echo '<img title="'. get_bloginfo('name') .'" src="' . $logo .'" />';
echo '</a></div>';
} ?>
</div><!-- end #site-branding -->
此代码的第一部分检查徽标的存在。如果徽标不存在,它将仅显示主题的名称和描述,前提是它未在主题选项中隐藏。它将在主页/首页上设置略有不同的名称和描述,而在其他页面上设置不同的样式。但是,如果存在徽标,它将在所有页面上显示徽标。
现在我想要实现的是在Front / Home页面上以不同方式(使用CSS) LOGO ,而在其他页面上我想要为徽标添加一些额外的css类。
我尝试在上面代码的第二部分中使用elseif语句,但无法获得所需的结果。
请建议我如何正确地做到这一点。
更新: 因为我无法在自己的问题上发布答案,所以我在这里发帖。 好吧,我删除了一些PHP关闭元素之后使用了这段代码,它就像魅力一样。我在这里再次发布它只是为了确保没有错误。
if(is_home() || is_front_page()) {
echo '<h1 class="site-logo"><a href="'. esc_url( home_url( '/' ) ) .'">';
echo '<img calss="mylogo1" title="'. get_bloginfo('name') .'" src="' . $logo .'" />';
echo '</a></h1>';
} else {
echo '<div class="site-logo"><a href="'. esc_url( home_url( '/' ) ) .'">';
echo '<img calss="mylogo2" title="'. get_bloginfo('name') .'" src="' . $logo .'" />';
echo '</a></div>';
} ?>
答案 0 :(得分:2)
if(!is_home() || !is_front_page()) { ?>
echo '<div class="site-logo"><a href="'. esc_url( home_url( '/' ) ) .'">';
echo '<img calss="mylogo1" title="'. get_bloginfo('name') .'" src="' . $logo .'" />';
echo '</a></div>';
<?php } else { ?>
echo '<div class="site-logo"><a href="'. esc_url( home_url( '/' ) ) .'">';
echo '<img calss="mylogo2" title="'. get_bloginfo('name') .'" src="' . $logo .'" />';
echo '</a></div>';
<?php } ?>
我们和以前一样,为你的每个条件设置不同的等级(即mylogo1 / mylogo2)。