只允许管理员访问WordPress后台
为了提高WordPress后台安全性,可以设置为只允许管理员访问WordPress后台,要实现这个功能,只需将下面的代码添加到当前主题的 functions.php:
1 2 3 4 5 6 7 8 9 10 11 | /** * 重置非管理员用户到首页 * https://www.wpdaxue.com/only-allow-administrators-to-access-wordpress-admin-area.html */ function redirect_non_admin_users() { if ( ! current_user_can( 'manage_options' ) && '/wp-admin/admin-ajax.php' != $_SERVER['PHP_SELF'] ) { wp_redirect( home_url() ); exit; } } add_action( 'admin_init', 'redirect_non_admin_users' ); |
通过 admin_init 钩子挂载链接重置函数,将非管理员用户重置到网站首页,如果你需要重置到其他页面,可以修改 wp_redirect() 的参数;如果你要修改用户角色,可以修改 current_user_can( 'manage_options' ),至于如何判断用户角色,请参考 WordPress Roles and Capabilities
参考资料:http://bavotasan.com/2013/only-allow-administrators-to-access-the-wordpress-admin-area/
11 条评论
发表评论
要发表评论,您必须先登录。
求大神啊,如何只允许投稿者以上的用户访问后台仪表盘?
修改代码中的 current_user_can( ‘manage_options’ ) 为 current_user_can( ‘edit_posts’ ) 即可,更多角色的判断,请参考 http://codex.wordpress.org/Roles_and_Capabilities
忘记密码的用户就看不到密码重置页面了,建议直接修改menu.php 里的Dashboard权限,让一般用户能看到登录页面。但是无法访问仪表盘。
总算又找到了
还能进到你的后台
我已经禁止注册了。。。。。。
这个要加上~
好东西,等我把前台可以修改信息 发表文章后 就弄这个
这段代码貌似我在SMZDM主题里看见过
比较实用,但是一般情况下后台直接不允许注册了。
注册注册