本站提供Linux服务器运维,自动化脚本编写等服务,如有需要请联系博主微信:xiaozme
wordpress自带的近期评论小工具能显示博客最新的评论,并且可以自定义显示数量,显得非常的方便,不过不足之处是当管理员对博客留言者进行回复时也会显示出来,这样一来近期评论小工具很有可能被管理员自己的评论占满,显得体验不太好。
想要解决这个问题也非常得简单,只需要将下面的代码添加到主题目录的functions.php文件中即可:
//让管理员评论不显示在首页
//查看wp-includes/comment.php中WP_Comment_Query::query部分
//根据传入参数完善查询条件
add_filter( 'comments_clauses', 'wpdit_comments_clauses', 2, 10);
function wpdit_comments_clauses( $clauses, $comments ) {
global $wpdb;
if ( isset( $comments->query_vars['not_in__user'] ) && ( $user_id = $comments->query_vars['not_in__user'] ) ) {
if ( is_array( $user_id ) ) {
$clauses['where'] .= ' AND user_id NOT IN (' . implode( ',', array_map( 'absint', $user_id ) ) . ')';
} elseif ( '' !== $user_id ) {
$clauses['where'] .= $wpdb->prepare( ' AND user_id <> %d', $user_id );
}
}
//var_dump($clauses);
return $clauses;
}
//详细查看wp-includes/default-widgets.php中 WP_Widget_Recent_Comments 部分
//增加参数not_in__user
add_filter( 'widget_comments_args', 'wpdit_widget_comments_args' );
function wpdit_widget_comments_args( $args ){
$args['not_in__user'] = array(1); //这里放你的ID;
return $args;
}
//END
最后可以看到网站右侧的近期评论将不会再显示管理员小z的评论,仅显示用户近期评论。
这个功能 不错。。。
都是用的人家的模板 这个功能是 这些代码啊