您的位置:首页 > 其它

wordpress中自动获取meta关键词和描述的方法。

2014-08-28 17:58 453 查看
meta标签里的keywords和description在曾经是非常受搜索引擎重视的,但好像最近由于技术变革,这两个指标对搜索引擎的影响越来越小。网上大家也众说纷纭,有的说已经完全没用了,有的又说大家对这件事有点矫枉过正:网上有消息说Google还是会把这些关键词放入数据库中。所以不管怎样,规范的写好meta标签的这些内容,不管是对seo还是网站本身来都是有利无害的。

wordpress有些模板本身支持关键词的设置,有些则不行,比如我的这个模板就需要自己稍微改动下文件。下面就简单说下实现方法及代码,主要实现的功能就是:

1.在主页面和分栏页面等非单页面显示自定义的关键词和描述。

2.在每个单页页面,自动获取文章设定的关键词作为meta标签的keywords,并且自动截取文章内容的前xx个字符作为描述。

很容易想到应该更改header文件,打开之后在title下面加入两行meta标签。

<meta name="keywords" content="">

<meta name="description" content="">

然后在两个content里面写上对应的php函数

首先是关键词,代码如下,其中wp_get_post_tags()表示获取对应文章ID的标签集合。

<?php

global $post;

if (is_single()){

$keywords = "";

$tags = wp_get_post_tags($post->ID);

foreach($tags as $tag){

$keywords = $keywords.$tag->name.",";

}

echo $keywords;

} else echo ("自定义关键词1,自定义关键词2,.......");

?>

然后是内容,说到内容就先说一下摘要,WordPress本身设置了一个摘要函数the_excerpt(),可以在文章生成的时候根据需求设定,但这个并不是必须的。如果文章不主动设置摘要的话会默认取前55个字符作为摘要。刚好可以满足我们meta中描述的需求。

<?php

if (is_single()){

if ($post->post_excerpt){

$description = $post->post_excerpt;

} else {

$description = substr(strip_tags($post->post_content),0,120);

}

echo $description;

} else echo ("XXXX网站XXXXXX,blablabla。")

?>

strip_tags函数表示输出过滤掉php,html等格式标签之后的内容。至于默认标签的长度,我们可以修改wp-includes下的formatting.php文件,查找wp_trim_excerpt($text)函数,找到excerpt_length,把值修改成相应的就可以了。一般来说上描述不要超过150个字符,关键词密度不要太高。

如果对关键词及描述需要精确到更细的页面分类,可以自己根据情况编写is_tags(),is_archive()等页面函数。

最后就是打开页面审查元素看看有没有添加正确,然后去类似去站长之家这类平台检测下meta标签,看看关键词描述等能不能被检测到。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: