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标签,看看关键词描述等能不能被检测到。
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标签,看看关键词描述等能不能被检测到。
相关文章推荐
- 一段代码让wordpress博客自动添加关键词(keywords)及网页描述(description)
- 深入探讨PHP自动获取关键词的具体方法
- windowform下 richTextBox+openFileDialog+saveFileDialog的使用方法 + 控件不获取焦点时自动关闭
- 如何插入一条记录获取插入后的自动增长ID列的方法.
- 分页解决方案 之 QuickPager的使用方法(URL分页、自动获取数据)
- 获取Enum枚举值描述的几法方法
- 获取Enum枚举值描述的几法方法
- 另一种获取系统服务描述表入口地址的方法
- .NET获取ACCESS自动编号列的一种方法(转)
- 获取Enum枚举值描述的几法方法
- 分页解决方案 之 QuickPager的使用方法(URL分页、自动获取数据)
- Symbian获取系统时间并转化为描述符字符串的方法
- hp6525s网卡不能自动获取IP地址的解决方法(新)
- 图文描述Vs2005制作WEB应用程序安装包的方法[E8.Net正式用户可以找我们获取全部代码参考]
- 自动获取 NT 系统服务描述表与函数名映射表
- 网页里flash 中的TextInput自动获取光标方法
- 如何插入一条记录获取插入后的自动增长ID列的方法.
- 图文描述Vs2005制作WEB应用程序安装包的方法[E8.Net正式用户可以找我们获取全部代码参考]
- 图文描述Vs2005制作WEB应用程序安装包的方法[E8.Net正式用户可以找我们获取全部代码参考]
- IPV6自动获取地址配置方法.jpg