在WordPress主题中实现自定义SEO标题的代码

发布时间:2018-05-27 2:50:11

有时候,有些同学会希望浏览器上标签页出现的标题与文章内容中的标题不一致,这样可以进行SEO优化,那么这篇文章就是说怎么样来实现这样的效果。

前期准备

在放置代码之前,我们需要在写文章的页面新建一个编辑框来填写seo标题的内容,这个编辑框是利用自定义meta字段在文章中实现的。

怎么样添加这个meta字段,叶子在这里就不说了,搜索一下,大把的代码。

作者为文章添加了一个叫做seo_info的meta字段,为了减轻数据库的读写,这个字段存储了三类信息,用||分隔。分别是第一位的标题信息,第二位的关键字信息,第三位的描述信息。

我们这次需要读取的是标题信息,要注意的是,这段代码适合于wordpress4.4以上版本,另外分类、标签的是存放在分类、标签的描述里面的。

具体代码

/**************************************************
*SEO标题-----用于网站SEO标题
*新的 WordPress 网页标题设置方法
**************************************************/
function yct_seo_title( $title ){
	global $post;
	//静态首页SEO标题
	if( (is_front_page()) ) {
		//获取静态页面的SEO标题,第一个为标题,第二个为关键字
		$seo_meta =explode('||',get_post_meta($post->ID,'seo_info',true));
		//如果标题存在
		if ($seo_meta[0]){
			//如果存在首页标题描述则取消
			if(isset( $title['tagline'] )) {unset( $title['tagline'] );}
			//设置首页的SEO标题
			$title['title']=strip_tags($seo_meta[0]);
		}
	}elseif( (is_single() || is_page()) ) {
 
		//获取页面、文章的SEO标题,第一个为标题,第二个为关键字
		$seo_meta =explode('||',get_post_meta($post->ID,'seo_info',true));
		//如果标题存在
		if ($seo_meta[0]){
			//设置页面、文章的SEO标题
			$title['title']=strip_tags($seo_meta[0]);
		}
	}elseif( (is_tag() || is_category()) ) {
			//获取标签、分类的SEO标题,第一个为普通描述,第二个为SEO标题
			$seo_meta =explode('||',get_the_archive_description());
			//如果标题存在
			if ($seo_meta[1]){
				//设置页面、文章的SEO标题
				$title['title']=strip_tags($seo_meta[1]);
		}
	}
	//返回标题
	return $title;
}
add_filter( 'document_title_parts', 'yct_seo_title' );
小兽wordpress凭借多年的wordpress企业主题制作经验,坚持以“为用户而生的wordpress主题”为宗旨,累计为2000多家客户提供品质wordpress建站服务,得到了客户的一致好评。我们一直用心对待每一个客户,我们坚信:“善待客户,将会成为终身客户”。小兽wordpress能坚持多年,是因为我们一直诚信。我们明码标价(wordpress做网站需要多少钱),从不忽悠任何客户,我们的报价宗旨:“拒绝暴利,只保留合理的利润”。如果您有网站建设、网站改版、网站维护等方面的需求,请立即咨询右侧在线客服或拨打咨询热线:18907337671,我们会详细为你一一解答你心中的疑难。

相关文章

写给所有做网站的朋友的一封信

写给所有做网站的朋友的一封信

现在就开始执行“1+N”营销推广和没有开始执行的人,一两天看不出任何区别; 一两个月看来差异也是微乎其微的;但在2-5年的长远时间来看的时候,你的高质 量询盘不断增加,你的互联网资产已经建立完成,对手已经很难匹敌,现在你看到这段文字的时候就是最好的开始,现在就是最好的时候,马上开始“1+N”体系的整体营销推广吧,我们和你一起,开创互联网营销大未来!

点击查看详情

准备开启WordPress网站建设推广?

我们相信高端漂亮的网站不应该是昂贵的,这就是wordpress对每个人都是免费的原因
wordpress建站免费入门,并提供价格合理的wordpress建站套餐。