在垃圾评论泛滥的年代,无数站长都在寻找对策。虽然有许多很好的垃圾评论过滤插件,但还是无法完全避免垃圾评论,尽管WordPress中评论作者的URL有带nofollow,但nofollow的作用到底怎样,谁也无法完全了解。对此有一个不错的方法,就是添加评论URL跳转,再使用robots.txt来阻止搜索引擎,目前的搜索引擎几乎都遵守robots协议。
第一步:
在你的主题模版文件夹下找到functions.php文件,打开后在下面加入如下代码:
//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;
}
}
}
第二步:修改WordPress文件
1.打开/wp-includes/comment-template.php文件
2.找到以下代码
$return = "<a href="$url" rel="external nofollow">$author</a>";
3.修改成
$return = "<a href='http://www.你的域名.com/jump/?url=$url' rel='external nofollow' class='url'>$author</a>";
OK,就这样把修改后的文件覆盖原来的文件,刷新一下页面你将看到链接已经修改成跳转形式的了,不信的话你可以在本文下方评论一条,填写名称、邮箱和网址,看看你的用户名链接是不是已经是“你的域名/?r=你输入的网址”?
是不是感觉很简单?下面几点修改的注意事项:
1、如果你选择了另外的主题就请在你主题文件夹下的functions.php里修改,改根目录的那个或者相关的评论文件没用;
2、在修改之前一定要先将原文件备份,如果改错了还可以还原;
3、在修改好后请在你的robots.txt中增加一条
Disallow: /?r=*
这样做的目的是让这个链接不被搜索引擎收录,他仅仅只是个跳转链接而已,没有页面。