程序员人生 网站导航

WordPress评论者链接重定向跳转并新窗口打开

栏目:WordPress时间:2013-12-08 09:19:54

一:评论者链接重定向:

细心的朋友可能会注意到,在一些wordpress博客上,当随便打开一篇文章,鼠标放在任意一个评

论者上,浏览器状态栏显示的地址为:http://url/?to=http://newrul 的形式,打开以后仍是转到评

论者的网站上。再观察你的站上面的评论链接,评论者链接直接就显示为评论者的链接。结果都一样,

有什么区别呢?从一定程度上讲默认的这种链接每一个评论都是一个外链,会分散站点的权重,就跟我

们前文中所讲不要让友情链接在所有页面都显示是同样的道理,修改为重定向之后效果会好一些。

方法:在主题目录的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;
}
else {
header("Location: http://你的网址/");
exit;
}
}

二:评论链接新窗口打开:

WordPress默认的评论者链接都是在同一个窗口中打开的,访客点击评论者链接之后就离开了你的站,

也就没有了回头客,很多时候流量就是在这个时候丢失的。

方法:在wp-includes/comment-template.php中增加一个target=‘_blank’语句。

即把这段代码:

if ( empty( $url ) || 'http://' == $url )
$return = $author;
else
$return = "<a class="url" rel="external nofollow" href="$url">$author</a>";
return apply_filters('get_comment_author_link', $return);

即在第一句的nofollow后面增加一个target=”_blank”

最后 建议在robots.txt中增加一行:Disallow: /?r=* 告诉搜索引擎不要抓取此页面  至此整个修改已经大功告成,刷新浏览器所见即所得。

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐