让作者在 WordPress 后台只能看到自己文章下的评论

在放大镜下,你可以看到每一片雪花都是一幅幅精美的图案:有的是晶莹的薄片,有的像白亮的银针,有的像一把张开的小扇,有的像夜空的星星……

对于多作者博客,默认情况下,在WordPress后台的评论列表是可以看到其他作者文章下的评论的,如果要限制用户只能看到自己文章下的评论,将下面的代码添加到主题根目录下的 functions.php 即可:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/**
 * 让作者在 WordPress 后台只能看到自己文章下的评论
 * https://www.wpdaxue.com/show-comments-authors-own-posts.html
 */
function wpdx_get_comment_list_by_user($clauses) {
	if (is_admin()) {
		global $user_ID, $wpdb;
		$clauses['join'] = ", wp_posts";
		$clauses['where'] .= " AND wp_posts.post_author = ".$user_ID." AND wp_comments.comment_post_ID = wp_posts.ID";
	};
	return $clauses;
};
if(!current_user_can('edit_others_posts')) {
	add_filter('comments_clauses', 'wpdx_get_comment_list_by_user');
}

/** * 让作者在 WordPress 后台只能看到自己文章下的评论 * https://www.wpdaxue.com/show-comments-authors-own-posts.html */ function wpdx_get_comment_list_by_user($clauses) { if (is_admin()) { global $user_ID, $wpdb; $clauses['join'] = ", wp_posts"; $clauses['where'] .= " AND wp_posts.post_author = ".$user_ID." AND wp_comments.comment_post_ID = wp_posts.ID"; }; return $clauses; }; if(!current_user_can('edit_others_posts')) { add_filter('comments_clauses', 'wpdx_get_comment_list_by_user'); }

注:你可能需要修改 第 8-9 行中的几个 wp_ 为你自己的数据库前缀。第 13 行添加了判断,只有“编辑”角色以下的用户才生效,也就是说,属于编辑和管理员这两个角色的用户是不限制的。

本文让作者在 WordPress 后台只能看到自己文章下的评论到此结束。解铃还需系铃人,躲避责任会解决不了任何问题,它只导致一个失败的人生。小编再次感谢大家对我们的支持!

您可能有感兴趣的文章
WordPress站点Gravatar头像前后台不显示的如何解决办法

WordPress主题需要支持https吗?WordPress站点如何如何实现https?

WordPress站点的页面/标签/分类URL地址如何添加.html?

WordPress站点更换了域名后数据库应该如何操作替换新旧域名?

WordPress安装在主机空间的什么目录里面?根目录在哪里?