WordPress评论留言链接优化-nofollow和url跳转

作者 FarLee 2010年2月17日 17:17:51   ‖浏览(17,123)

WordPress评论中,会留下留言者的网址超链接,这样就使很多seo垃圾留言利用这个评论链接功能do evil。spam链接太多,一方面它是外部链接将会分散你的博客页面的PR权重,另一方面如果该链接是被Google或百度等搜索引擎惩罚的网站,这些评论链接无疑也会使搜索引擎降低对你网站的信任度。所以我们有必要对WordPress的评论留言链接进行优化。

Google 评论链接优化–rel=’external nofollow’

在默认的WordPress模板中,我们看到评论人的留言链接网址都是设置成rel=’external nofollow’属性,回复按钮的链接默认设置成了rel=’nofollow’属性,这是什么意思呢?

链接a标记的rel=’nofollow’属性是Google搜索引擎能够识别的一种标记,该属性告诉Google”no follow”,即不要跟随这个链接;external是外部的意思,WordPress博客设置rel=’external nofollow’也是告诉Google搜索引擎这是外部链接,同时不要索引这个外部链接。除Google外,MSN和Yahoo也都支持这个标签属性。

所以通过设置rel=’external nofollow’可以有效地减少seo垃圾链接,回复链接使用rel=’nofollow’也可以减少网站重复页面。但是Google 工程师 Mattcutts 称现在nofollow的作用已经大大降低,这样我们还可以使用Google rel Canonical属性

百度 评论链接优化–url重定向跳转

但是百度搜索引擎(baidu.com)不支持rel=’external nofollow’也不支持rel Canonical属性,该如何进行评论链接优化?我们想既然WordPress动态网址都可以静态化为永久固定连接,那么这些留言者的评论链接是否也可以通过url重定向跳转功能转化为动态网址呢?然后我们再用robots.txt文件禁止搜索引擎索引(follow)这个链接,就OK了,robots.txt文件百度是完全支持的。实际上完全可以,首先可以通过安装插件来实现,比如“Comments Link Redirect”。

也可以直接添加代码,在后台管理主题文件中找到主题支持函数functions.php文件,在最后面?>前添加重定向代码,WordPress评论链接的网址重定向跳转代码如下:

//comments link redirect
add_filter('get_comment_author_link', 'add_redirect_comment_link', 5);
add_filter('comment_text', 'add_redirect_comment_link', 99);
function add_redirect_comment_link($text = ''){
$text=str_replace('href="', 'href="'.get_option('home').'/?r=', $text);
$text=str_replace("href='", "href='".get_option('home')."/?r=", $text);
return $text;
}
add_action('init', 'redirect_comment_link');
function redirect_comment_link(){
$redirect = $_GET['r'];
if($redirect){
if(strpos($_SERVER['HTTP_REFERER'],get_option('home')) !== false){
header("Location: $redirect");
exit;
}
else {
header("Location: http://h.farll.com/");
exit;
}
}
}

最后在网站根目录下的robots.txt文件中添加 

Disallow: /?r=*

WP中robots.txt文件的具体设置请参考:WordPress robots.txt设置

最后,不管Google还是百度搜索引擎优化,黒帽SEO的垃圾评论链接就不会对你的博客产生大的影响了。

另外,评论链接默认是在同一窗口中打开,有人问怎么设置在新窗口中打开评论链接的url,打开wp-includes目录下的comment-template.php文件,找到第140行(WordPress2.9.1)的get_comment_author_link()函数,在第148行else $return 这行a标签里加入target=’_blank’属性,修改后上传即可。


“WordPress评论留言链接优化-nofollow和url跳转”文章评论(26)

  1. 如何增加外链,我的外链1400,如何加到5000,大家是手动加的吗,一个站一个站加
    的吗,太花时间了

  2. 我和别人换链接之后,发现自己带了NOFOLLOW,哎,找不到去掉的地方!

    • 不可能啊。友链里的nofollow除非是你自己添加的,否则不会有的

  3. 写得不错,支持一下

  4. 学习了,写得不错,支持一下

  5. 恩,这个方法好~

  6. 征婚
    本少女23岁,刚大学毕业,温柔可爱,但运气不佳,工作不顺心,工资也低,急需资金创业,现征有缘的男士交友创业,

    电话:13713476022

  7. 不错,做SEO的人太多了,虽然是评论了,但是那些评论太死板,指向的也不是博客,而是一些购物网站,如果当垃圾删除了有好想不太好。

  8. 学习了,这个必须的

  9. nofollow属性在WordPress程序中都设置好了,wordpress够意思!学习了

  10. 尝试添加了重定向代码,结果博客突然就不能访问了,后来才知道是500程序错误,可把我折腾惨了

  11. 不明白为什么,一添加WordPress评论链接的网址重定向跳转代码,functions.php文件的代码就会全乱了?

  12. 出现这样的原因是什么啊?
    Warning: Cannot modify header information – headers already sent by (output started at /home/。。。/functions.php:1) in /home/。。。/functions.php on line 536

  13. 博主,这个方法好象在3.1.3下面不能用了,不知道是不是win主机和linux主机的问题。

  14. 应该标注一下哪里要修改成自己的网站嘛。

  15. 加了Nofflow 外链就美意义了。

  16. 原理如此啊。。。害我做了好久,不过百度权重看重的主要是流量吧

  17. 本来要加这个功能的,但是发现博主的博客没有这样做,我想一下。这样是不是会让留言的人感到反感或者是什么原因,所以暂时不加这个功能了。

Trackbacks/Pingbacks

  1. Google 网站管理员工具功能和使用方法 - 远方博客
  2. Google Buzz在Wordpress博客显示和分享插件 – 远方博客
  3. WordPress评论留言链接优化-nofollow和url跳转 – 陈家杰's Blog
  4. wordpress下的robots.txt配置
  5. MathCAI » wordpress robots.txt设置-google百度seo优化差异
  6. wordpress文章评论链接的nofollow设置 | 酷影小何的博客
  7. wordpress robots.txt设置-google百度seo优化差异 | cps是什么意思
  8. wordpress移除全站的nofllow标签 | 大米粥里游泳的心

来说兩句