WordPress主题首页logo有h1标签,分类&文章内页又有2个h1,怎么办?
网络营销方法很多,其中以SEO最具效果,非常适合新媒体人做为公众号推广战略。
网站优化符合网页 html代码规范:
- 网页标题title标签权重最高,其次是h1标签。
- title和h1标签,每个页面最好只出现一次,出现多次不利权重集中,也可能会被搜索引擎惩罚。
由于很多 WordPress主题,通常是在 header 头部的 logo 中,添加 h1标签。
同时,文章内页的标题又有 h1标签,这样会出现 2 次 h1标签,该如何让每个页面,只出现 1 次 h1标签呢?
我在优化陈沩亮博客的过程中,也有遇到此类问题,解决方法可根据本身WP主题的情况,参考以下代码做修改:
修改方法1
将 header.php 文件里的代码 ▼
<hgroup class=”logo-site”></hgroup>
用以下代码替换,即可解决 ▼
<? php if (is_home()) { echo '<h1 class="site-title">'; }else{ echo '<div class="h1_logo" >'; } ?> <a href="/"><img src="<?php bloginfo('template_url'); ?>/img/logo.png" alt="<?php bloginfo('name');?>" title="<?php bloginfo('name');?>" /></a> <?php if (is_home()) { echo '</h1>'; }else{ echo '</div>'; } ?>
is_home()
函数判断若是首页,就显示h1标签,若不是首页就显示div标签。
(由于不是每个WP主题代码都一样,假如修改方法1不适用,请参考以下修改方法2)
修改方法2
WP首页和分类页判断函数说明 ▼
if ( is_front_page() || is_category() || is_home() ) : ?>
- is_front_page 和 is_home 表示如果是首页。
- is_category 表示如果是分类页。
因为只需要首页 logo 出现 h1标签,其它页面不需要有h1标签。
以下是删除掉 is_category() ||
之后的代码 ▼
<? php if (zm_get_option("logo_css")) { ?> <div class="logo-site"> <?php } else { ?> <div class="logo-sites"> <?php } ?> <?php if ( is_front_page() || is_home() ) : ?> <?php if (zm_get_option('logos')) { ?> <h1 class="site-title"> <?php if ( zm_get_option('logo') ) { ?> <a href="<?php echo esc_url( home_url('/') ); ?>"><img src="<?php echo zm_get_option('logo'); ?>" title="<?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?>" alt="<?php bloginfo( 'name' ); ?>" rel="home" /><span class="site-name"><?php bloginfo( 'name' ); ?></span></a> <?php } ?> </h1> <?php } else { ?> <h1 class="site-title"><a href="<?php echo esc_url( home_url( '/' ) ); ?>" title="<?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?>" rel="home"><?php bloginfo( 'name' ); ?></a></h1> <p class="site-description"><?php bloginfo( 'description' ); ?></p> <?php } ?> <?php else : ?> <?php if (zm_get_option('logos')) { ?> <p class="site-title"> <?php if ( zm_get_option('logo') ) { ?> <a href="<?php echo esc_url( home_url('/') ); ?>"><img src="<?php echo zm_get_option('logo'); ?>" title="<?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?>" alt="<?php bloginfo( 'name' ); ?>" rel="home" /><span class="site-name"><?php bloginfo( 'name' ); ?></span></a> <?php } ?> </p> <?php } else { ?> <p class="site-title"><a href="<?php echo esc_url( home_url( '/' ) ); ?>" title="<?php echo esc_attr( get_bloginfo( 'name', 'display' ) ); ?>" rel="home"><?php bloginfo( 'name' ); ?></a></p> <p class="site-description"><?php bloginfo( 'description' ); ?></p> <?php } ?> <?php endif; ?>
if ( is_front_page() || is_home() ) : ?> <?php if (zm_get_option('logos')) { ?>
表示若是首页、有logo设置,就显示有 h1标签的 logo。- 第1个
<?php else : ?>
表示若无 logo,就显示 “设置” 中的站点标题、副标题(有h1标签)。 - 第2个
<?php else : ?> <?php if (zm_get_option('logos')) { ?>
表示如果不是首页,就显示无 h1 标签的logo。 - 第3个
<?php else : ?>
表示若不是首页、无logo,就显示 “设置” 里的网站标题、副标题。
添加分类页标题h1代码
如果你的分类页的 logo 不输出 h1标签后,同时分类页模板也没有 h1标题标签的话……
(具体情况,谷歌浏览器请按 CTRL + U 查找网页代码<h1
来确定)
第一步:确定分类页,完全没有h1标签,需要在分类页模板,添加 “分类页h1标题” 代码 ▼
<h1 class="cat_title"><?php single_cat_title(); ?></h1>
第二步:在 style.css 文件里,添加分类页 h1标题的CSS样式代码 ▼
h1.cat_title{ background: #fff; text-align: left; font: 18px "Open Sans", Arial, sans-serif; text-transform: uppercase; border-radius: 2px; border-left: 10px solid #0373db; padding-left: 14px; margin: 0 0 8px 0; line-height: 2; }
这么修改后,就能轻松解决,网站 logo有 h1 标签,内页文章、分类页又有 2 个 h1 标签的问题了。
SEO是各种细节优化的成果,要是你能把各种网站代码的各种细节都优化好,网站排名也会在一定程度上有所提升 ^_^
希望陈沩亮博客( https://www.chenweiliang.com/ ) 分享的《WordPress主题首页logo有h1标签,分类&文章内页又有2个h1怎么办?》,对您有帮助。
欢迎分享本文链接:https://www.chenweiliang.com/cwl-582.html
喜欢就分享和按赞!您的分享和按赞,是我们持续的动力!