最新消息:

让wordpress侧边栏最近评论小工具不显示评论者链接的方法

WordPress 大步 2067浏览 0评论

昨天换了主题,换主题容易,完善起来就是麻烦,每次换了之后都要花很长时间来完善下,这不,我现在使用的这个主题就有一个问题,wordpress 的侧边栏的最近评论/近期评论小工具会显示评论作者的超链接,而我又设置这个近期评论工具放到首页,所以,为了防止有人恶意留言,所以要想法子去除评论作 者留下的超链接。

方法如下(参考自《让 WordPress 侧边栏最新评论不显示评论者链接》):

在WordPress文件夹中的/wp-includes/路径下找到default-widgets.php打开,找到以下代码段:

foreach ( (array) $comments as $comment) {
$output .= '<li class="recentcomments">' . /* translators: comments widget: 1: comment author, 2: post link */ sprintf(_x('%1$s on %2$s', 'widgets'), get_comment_author_link(), '<a href="' . esc_url( get_comment_link($comment->comment_ID) ) . '">' . get_the_title($comment->comment_post_ID) . '</a>') . '</li>';
}

解释:

get_comment_author_link() 就是一个获取评论作者的链接的函数,所以,我们要将这个函数改为get_comment_author() ,即改为获取评论作者的名称,而不是超链接。这样就去除了评论作者的超链接。大家可以看我博客的评论。

注意可能修改后,依旧无效,这极有可能是因为插件缓存的原因,网上的教程都没有提及这个问题。所以,我建议修改保存代码后,先删除侧边栏的近期评论小工具,然后再添加,这样就可以看到效果了。我今天弄了半天,发现自己及时删除了这段代码,还是能看到侧边栏的最近评论小工具。于是我就删除现有的,再添加一个新的最近评论小工具,就搞定了。

下面是删除每篇文章后面的评论的评论者链接和评论内容里的链接的方法,在主题的functions.php的末尾添加如下代码:

function remove_comment_links() {
global $comment;
$url = get_comment_author_url();
$author = get_comment_author();
if ( empty( $url ) || 'http://'== $url )
$return = $author;
else
$return = $author;
return $return;
}
add_filter('get_comment_author_link', 'remove_comment_links');
remove_filter('comment_text', 'make_clickable', 9);

 

转载请注明:大步's Blog » 让wordpress侧边栏最近评论小工具不显示评论者链接的方法

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

网友最新评论 (6)

  1. 关于下面的这个“删除每篇文章后面的评论的评论者链接和评论内容里的链接的方法”,主题的function.php这个是在哪里的?怎么搜索出来,我只能找到functions.php。修改后出现服务器错误的提示。
    陈怡2年前 (2015-01-06)Reply
    • 不好意思,当初写文章没怎么检查,少了个s,就是修改functions.php。我不知道你用的主题和我用的是不是一样的。但是获取评论函数这些都是一样的,根据php报错看看你改错了哪里
      大步2年前 (2015-01-06)Reply
  2. 博主在不在啊,急求啊
    陈怡2年前 (2015-01-06)Reply
  3. 楼主在不在啊,急需啊
    陈怡2年前 (2015-01-06)Reply
  4. 删除每篇文章后面的评论的评论者链接和评论内容里的链接的方法,这个在主题的function.php,实在哪里啊???
    陈怡2年前 (2015-01-06)Reply
SiteMap