logo
当前位置:首 页 > 资源分享 >WP技巧 > 查看文章
此文受启发于《为评论、留言者的主页链接添加链接跳转》一文,不过可惜的是风之逸童鞋介绍的方法是在 Bo-Blog 平台下,并不适用于 WordPress,但是我深信 WordPress 的强大比 Bo-Blog 而言有过之而无不及,所以我坚信 WordPress 一定也有类似的方法可以实现评论者链接的重定向跳转。先说一下为什么要对评论者的链接进行重定向跳转处理。最主要的原因就是为了防止泛滥的 Spam,如果对评论者的链接进行重定向跳转,那么就算有 Spam 突破防线成功在你的页面驻扎,你也无需担心 Spam 会和当前页面抢权重了。或许你会说评论者的链接本来就已经加了 rel=”external nofollow” 属性,再给链接做跳转处理是不是多此一举了?我当然不会做那样没有意义的事情,第一,百度这丫是不认识 nofollow 这个单词滴,加了 nofollow 也是白搭;第二,Google 对 nofollow 的权重分布方法已经调整过了,站内链接有可能会抢去当前页面的权重,所以仅靠 nofollow 也是不行的了。

问题的解决方法在我爱水煮鱼的博客中找到了答案:Comments Link Redirect 插件

我爱水煮鱼称其为防 Spam 的终极办法,此言不虚啊。不过我向来比较排斥使用插件,我看了一下 Comments Link Redirect 插件的代码,完全可以复制到 functions.php 中来代替使用插件。将以下代码复制到主题文件夹下的 functions.php 中即可。

  1. //comments link redirect   
  2. add_filter(‘get_comment_author_link’, ‘add_redirect_comment_link’, 5);   
  3. add_filter(‘comment_text’, ‘add_redirect_comment_link’, 99);   
  4. function add_redirect_comment_link($text = ){   
  5.     $text=str_replace(‘href=“‘, ‘href=”‘.get_option(‘home’).’/?r=’, $text);   
  6.     $text=str_replace(“href='”“href='”.get_option(‘home’).“/?r=”$text);   
  7.     return $text;   
  8. }   
  9. add_action(‘init’, ‘redirect_comment_link’);   
  10. function redirect_comment_link(){   
  11.     $redirect = $_GET[‘r’];   
  12.     if($redirect){   
  13.         if(strpos($_SERVER[‘HTTP_REFERER’],get_option(‘home’)) !== false){   
  14.             header(“Location: $redirect”);   
  15.             exit;   
  16.         }   
  17.         else {   
  18.             header(“Location: http://wange.im/”);   
  19.             exit;   
  20.         }   
  21.     }   
  22. }  

然后再看评论者和评论者留言中的链接,形式如下:

http://wange.im/?r=http://评论者的URL

不过据 yanxc 同学测试,如果使用了 cos-html-cache 静态化插件,会导致我爱水煮鱼的 Comments Link Redirect 插件无法正常使用,因为我没有用过任何缓存或者静态化的插件,这一点我不得而知。不过 yanxc 给出了另一个评论者链接重定向跳转的解决方案,同样是插件,经我测试,同样也是可以将代码复制到 functions.php 中使用,代码如下:

  1. //comments link redirect   
  2. add_filter(‘get_comment_author_link’, ‘add_redirect_comment_author_link’, 5);   
  3. add_filter(‘comment_text’, ‘add_redirect_comment_text’, 99);   
  4. function add_redirect_comment_author_link($text = ){   
  5. $text=str_replace(“href=”,’href=“javascript:window.location=’,ereg_replace(‘href='[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]”,”0“”$text));return $text;   
  6. }   
  7. function add_redirect_comment_text($text = ){   
  8. $text=str_replace(“href=”,“href=’javascript:window.location=”,ereg_replace(‘href=“[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]”‘,“0′”$text));return $text;   
  9. }  

然后再看评论者和评论者留言中的链接,形式如下:

javascript:window.location=’http://评论者的URL’

两个方案有相同之处,也各有异同各有优点,但最终目的都是一致的,就是堵住 Spam 的臭嘴,用 WordPress 的童鞋们可以各取所需。

原文地址:万戈博客 http://wange.im/comments-link-redirect-for-wordpress.html

清霄凭栏语凝噎,音洒陋屋思翩跹。

—— 清音陋屋

清音陋屋
你可能也喜欢Related Posts
众说纷纭Comments
大眼 可爱 大笑 坏笑 害羞 发怒 折磨 快哭了 大哭 白眼 晕 流汗 困 腼腆 惊讶 憨笑 色 得意 骷髅 囧 睡觉 眨眼 亲亲 疑问 闭嘴 难过 淡定 抗议 鄙视 猪头
小提示:直接粘贴图片到输入框试试
努力发送中...
评论加载中……
  1. 1 楼 meong

    Great post at Document Moved. I was checking constantly this blog and I’m impressed! Extremely useful info specifically the last part :) I care for such info much. I was seeking this certain information for a very long time. Thank you and good luck.

    2012年05月17日 01:53:54 回复 取消回复
  • 推荐文章
  • 最多评论
  • 最热文章
  • 最新评论
footer logo
本站提供音乐仅供试听交流,请勿用于任何商业用途!如果本站发布信息侵犯到您的权益,请留言指出,本站将及时删除相关信息。
Copyright © 52QingYin.CN   Theme by QQOQ   蜀ICP备11021737号-1