比All in One SEO Pack插件更加有效率的SEO方法

2011年08月31日20:18:15 1 暂未收录 628

对于大多数个人博客来说,似乎All in One SEO Pack插件并不是一个有效率的SEO解决方案(具体可查看这篇文章)。在软件开发中,有一个说法: “约定优于配置”,众多的配置选项是以性能的降低为代价的,作为一个通用型插件,All in One SEO Pack必不可少的需要照顾到方方面面,而很多耗时巨大的功能,对于个人小型博客来说,并不是很需要。

默认情况下,Wordpress已经可以很到的做到“Search Engine Friendly”。原创而且有意义的文章内容,才能让个人博客获得更好的SEO评价,下面的优化方法只是锦上添花而已。而且相对于All in One SEO Pack插件,本篇文章提供的方法在一些低流量的博客上,性能的提高可能不那么“显而易见”。但是对于我这样对代码有着“洁癖”的人来说,在自己的博客上 加上一堆不是自己写的插件,总是让自己如坐针簪。

我们需要All in One SEO Pack插件的哪些功能?

在寻找All in One SEO Pack插件的替代方案前,首先要弄明白这个问题。下面几个功能是最有价值的,也是wordpress默认无法提供的:

1、博客的标题(title)应当写成内容 | 博客名的形式;

2、head部分添加充足的meta说明;

3、让搜索引擎不要索引存档页面,存档页面都是重复内容,这会降低博客的评分。

4、为每一篇文章以及博客首页,加上独特的关键词(keywords);

下面就会针对这些问题,给出解决方案。如果你不大了解php语言,只需要按照说明复制粘贴到自己的wordpress模板中就可以了。

修正博客的标题

在模板文件夹中找到header.php文件,打开后修改title标签:

  1. <title><?php wp_title(' | ', true, 'right'); ?><?php bloginfo('name'); ?></title>  
  2. /**或者干脆把博客的名字写死,你总不会时常换博客名字吧**/  
  3. <title><?php wp_title(' | ', true, 'right'); ?>Cogipard Playground</title>  

添加充足的meta说明

还是修改header.php文件,在head标签中酌情加入如下内容:

  1. /**博客的描述性内容,你可以像我这样写死,也可以采用wordpress的副标题(用bloginfo("description")获得)**/  
  2. <meta name="description" content="A personal online home, portfolio and journal." />  
  3. /**博主的名字**/  
  4. <meta name="author" content="dotswing" />  
  5. /**版权信息**/  
  6. <meta name="copyright" content="Cogipard Playground" />  

不索引存档页面

修改header.php文件,紧接着上述的meta标签,加入:

  1. <?php if (is_single() || is_page() || is_home() ) : ?>  
  2. <meta name="robots" content="index,follow" />  
  3. <?php else : ?>  
  4. <meta name="robots" content="noindex,follow" />  
  5. <?php endif; ?>  

这样对于存档页面,搜索引擎就不会去索引这些重复的内容了。

个性化输出页面文章的关键词

在模板文件夹下的functions.php文件中,加入如下的函数:

  1. function keywords() {  
  2. $keywords = '';  
  3. if( is_single() || is_page() ){  
  4. $terms = get_the_terms( get_the_ID(), 'post_tag' );  
  5. if ( is_wp_error( $terms ) )  
  6. return $terms;  
  7. if ( emptyempty$terms ) )  
  8. return false;  
  9. foreach ( $terms as $term ) {  
  10. $keywords .= $term->name;  
  11. $keywords .= ', ';  
  12. }  
  13. }  
  14. else {  
  15. $tags = get_tags('orderby=count&order=DESC');  
  16. foreach ($tags as $tag){  
  17. $keywords .= $tag->name;  
  18. $keywords .= ', ';  
  19. }  
  20. }  
  21. $keywords = substr($keywords, 0, strlen($keywords)-2);  
  22. echo $keywords;  
  23. }  

这个函数的作用是,如果访客浏览的是单独的某文章页面,就会把该文章对应的tag提取出来,作为关键词;如果是其它页面,则把博客所有的tag一起输出成关键词。关键词用逗号隔开。

在header.php中调用这个函数:

  1. <meta name="keywords" content="<?php keywords();?>" />  

functions.php中的代码,可以在模板页中直接使用,wordpress已经为我们做好了include操作,不需要自己来写include_once(‘functions.php’);了。

weinxin
我的微信
分享交流WordPress经验与技巧,关注前端设计与网站制作。仅用于功能演示。
Begin主题购买
Begin主题购买

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:1   其中:访客  0   博主  0   引用   1

    来自外部的引用: 1

    • 比All in One SEO Pack插件更加有效率的SEO方法 – wordpress教程