
发现Typecho评论者网站链接都是在当前页跳转,这一点感觉不是特别友好,因为用户一般不会在返回上一页,也造成了用户流失。
看到网上有一个不修改程序即可实现的方法,留存备注下代码。
修改方法
修改主题文件:functions.php,在最后一行之前添加下面的代码
/**
* 评论者主页链接新窗口打开
* 调用<?php CommentAuthor($comments); ?>
*/
function CommentAuthor($obj, $autoLink = NULL, $noFollow = NULL) { //后两个参数是原生函数自带的,为了保持原生属性,我并没有删除,原版保留
$options = Helper::options();
$autoLink = $autoLink ? $autoLink : $options->commentsShowUrl; //原生参数,控制输出链接(开关而已)
$noFollow = $noFollow ? $noFollow : $options->commentsUrlNofollow; //原生参数,控制输出链接额外属性(也是开关而已...)
if ($obj->url && $autoLink) {
echo '<a href="'.$obj->url.'"'.($noFollow ? ' rel="external nofollow"' : NULL).(strstr($obj->url, $options->index) == $obj->url ? NULL : ' target="_blank"').'>'.$obj->author.'</a>';
} else {
echo $obj->author;
}
}然后在需要调取评论的地方将原来输出评论作者的函数,替换为新函数
原函数一般是<?php $comments->author(); ?>
改成<?php CommentAuthor($comments); ?>即可。

评论已关闭