当前位置:首页>网站建设>WordPress后台禁止非管理员用户查看网站评论的方法和代码

WordPress后台禁止非管理员用户查看网站评论的方法和代码

释放双眼,带上耳机,听听看~!

WordPress网站后台的【评论】除了管理员可以访问浏览外,其他角色如贡献者也可以访问查看,这显然不合理且会泄露评论用户的隐私,因为谁中除了有评论内容外还有评论者的邮箱、IP或其它自定义扩展的信息。所以修改WordPress后台评论的访问权限很有必要,这里建议在后台对非管理员角色移除【评论】菜单,然后禁止非管理员角色访问。

实现代码和修改方法:

1、在当前主题的functions.php文件添加代码:

function remove_edit_comments_menu() {
	if ( ! current_user_can( 'manage_options' ) ) {
		remove_menu_page( 'edit-comments.php' );
	}
}
add_action( 'admin_menu', 'remove_edit_comments_menu' );

作用:通过current_user_can函数判断当前登录用户是否拥有管理权限,如果没有,则不显示左侧的【评论】入口。

2、接着在functions.php文件继续添加代码:

function restrict_edit_comments_page() {
	if ( ! current_user_can( 'manage_options' ) && strpos( $_SERVER['REQUEST_URI'], '/wp-admin/edit-comments.php') !== false ) {
		wp_redirect( admin_url() );
		exit;
	}
}
add_action( 'admin_init', 'restrict_edit_comments_page' );

作用:当非管理员欲访问后台的评论页面时,自动跳转到WordPress后台首页。因为步骤1只是把评论页面的入口隐藏,直接在浏览器输入评论页面链接还是可以访问的。

欢迎访问秀主题博客,分享简单实用WP教程

如果不想跳转,直接不显示评论,可以用下面的函数替换上面步骤2的函数:

function edit_comments_page_blank( $clauses, $wp_query ) {
	global $wpdb;
	if( ! current_user_can( 'manage_options' ) ) {
		$clauses['where'] .= " AND {$wpdb->prefix}comments.comment_type != 'comment'";
	}
	return $clauses;
}
add_filter( 'comments_clauses', 'edit_comments_page_blank', 10, 2 );

作用:当非管理员欲访问后台的评论页面时不显示评论。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

给TA打赏
共{{data.count}}人
人已打赏
网站建设

7b2圈子顶部添加文字滚动通知

2024-7-15 9:22:07

网站建设

WordPress获取一个月内的热门文章

2024-7-18 8:40:25

温馨提示:

1.本站大部分内容均收集于网络!若内容若侵犯到您的权益,请发送邮件至:971318156@qq.com,我们将第一时间处理!

2.资源所需价格并非资源售卖价格,是收集、整理、编辑详情以及本站运营的适当补贴,并且本站不提供任何免费技术支持。

3.所有资源仅限于参考和学习,版权归原作者所有,更多请阅读网站声明

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索