wordpress如何设置禁止访问后台?

redmaomail 2024-07-24 23:06 阅读数 97 #wordpress

红帽云邮外贸主机

下面由wordpress" target="_blank">wordpress教程栏目来教大家设置wordpress禁止访问后台的方法,希望对需要的朋友有所帮助!

wp.jpg

有时候我们的网站自己做了会员中心,或者没有会员功能,那么就不需要用户访问后台,我们可以通过以下方法实现用户禁止访问后台。

首页打开wordpress的核心函数文件functions.php,将下面这段代码插入到functions.php文件中。

一、禁止默认注册用户角色访问后台

默认注册用户角色:WordPress后台 → 设置 → 常规,设置新用户注册默认角色中的角色。

function qzl_redirect_wp_admin()
 {   
 if ( is_admin() && !current_user_can('editor') && ( !defined( 'DOING_AJAX' ) || !DOING_AJAX ) ) {
          $current_user = wp_get_current_user();
          if($current_user->roles[0] == get_option('default_role')) {
            wp_safe_redirect(home_url());
            exit();
          }
        }
    }
    add_action('init', 'qzl_redirect_wp_admin');
登录后复制

如果你修改了新用户默认角色,那对之前已经注册的用户将无效。

二、只允许管理员,编辑和作者角色访问后台

将以下代码添加到当前主题函数模板functions.php文件中

add_action('init', 'qzl_redirect_wp_admin');
function qzl_redirect_wp_admin()
{
    if (is_admin() && is_user_logged_in() && 
    !current_user_can('manage_options') && 
    !current_user_can('publish_pages') && 
    !current_user_can('publish_posts') && 
    (!defined('DOING_AJAX') || !DOING_AJAX)) {
        wp_safe_redirect(home_url());
        exit;
    }
}
登录后复制

判断当前用户是否登录以及当前用户角色,禁止访问后台的的用户将直接跳转到网站首页。

如果需要跳转到指定的页面链接,可以将wp_safe_redirect(home_url())修改为如下类似的链接:

wp_safe_redirect('http://www.php.cn');
登录后复制

只能跳转到站内链接,不能转到站外链接。

如果只允许管理员访问后台,可以将其中允许编辑和作者访问后台的代码删除:

&& !current_user_can('publish_pages') && !current_user_can('publish_posts')
登录后复制

总结:通过上面的几段代码就可以禁止用户访问我们的后台,是不是很简单呢,通过限制用户访问后台,可以过滤掉一些无必要的后台访问请求,这样能够提升我们网站的安全性,当您的wordpress网站开发了会员中心或者没有会员功能都可以使用这种方式为您的网站增加安全筹码。

以上就是wordpress如何设置禁止访问后台?的详细内容,更多请关注红帽云邮其它相关文章!


红帽云邮外贸主机

分享到:
版权声明:本站内容源自互联网,如有内容侵犯了你的权益,请联系删除相关内容。
    红帽云邮外贸主机
热门
    红帽云邮外贸主机
    红帽云邮外贸主机