我爱水煮鱼 » WordPress » 动态修改 WordPress Heading 标签

动态修改 WordPress Heading 标签

在博客的首页或者其他列表页,一般来说 H1 标签是博客的标题,H2 是日志的标题,而到了日志的页面,则日志的标题应该是给予 H1 标签,这个无论从语义上说还是 SEO 上说都是最好的,那么日志的内容怎么给设置子标题的 heading 标签呢?

按照语义,在日志页面,H1 是日志的标题,那么日志的第一级子标题是 H2,然后是 H3,这样的话,到了首页和列表页,如果还是显示全文,那么就可能出现博客子标题和博客标题的 Heading 标签都是 H2,这个显然不符合语义,对 SEO 也是没有帮助,所以我们需要在首页或者列表页对日志内容中 Heading 标签就行降级,下面是具体的代码,添加到主题的 functions.php 即可:

add_filter( 'the_content', 'wp_dynamic_headings' );

function wp_dynamic_headings( $content ) {
	if(is_singular()){
		return $content;
	}
	$content = str_replace( array( '<h5', '</h5>' ), array( '<h6', '</h6>' ), $content );
	$content = str_replace( array( '<h4', '</h4>' ), array( '<h5', '</h5>' ), $content );
	$content = str_replace( array( '<h3', '</h3>' ), array( '<h4', '</h4>' ), $content );
	$content = str_replace( array( '<h2', '</h2>' ), array( '<h3', '</h3>' ), $content );
	return $content;
}

标签:

分享到:

请选择你看完该文章的感受:

不错 超赞 无聊 扯谈 不解 路过
  1. “日志的标题应该是给予 H1 标签,这个无论从语义上说还是 SEO 上说都是最好的”的假设不成立,这样修改源代码就是折腾。