我们经常会在网站中使用到近期评论小工具,最前端侧边栏显示最新的评论。这是一个很棒的功能,玩家评论可以展示侧边栏,可以增加用户的活跃性,但是当我们集中回复用户评论的时候,侧边栏展示的都是我们站长的评论,很影响用户体验,这个我认为需要修改掉。下面就动手去除近期评论小工具中站长的评论。
首先查看WordPress近期评论小工具源码第96-100行:
$comments = get_comments( apply_filters( 'widget_comments_args', array(
'number' => $number,
'status' => 'approve',
'post_status' => 'publish'
) ) );
这就是获取最新评论的代码,我们需要修改的是获取评论的条件,这里需要给widget_comments_args添加过滤,通过查看WordPress评论表的结构可以发现user_id字段用来存储评论作者ID的,我们通过过滤作者ID来实现去除近期评论小工具中站长的评论,代码如下:
/**
* 功能:去除WordPress近期评论小工具中站长的评论
* http://www.wptoutiao.com/
**/
function wptoutiao_widget_comments_args($args){
$args['user_id'] = 0;
return $args;
}
add_filter('widget_comments_args', 'wptoutiao_widget_comments_args');
将上面代码复制到主题functions.php文件中。
写完测试一下,发现一个问题,这样只是去除了游客的评论,如果注册登录的其他用户发表的评论也被过滤掉了,所有这个方法还有问题。容我再思索思索,后续更新,大家有什么好的办法,也可以告诉我,但是如果你的网站是不允许用户注册的是可以使用上面的代码的。
感觉本站内容不错,读后有收获?小额赞助
还可以分享文章给好友:
注册登陆影响体验
什么意思?