首页 > CMS教程 > WordPress > 正文

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

阿诚
发布: 2022-07-21 15:34:06
原创
2896人浏览过

下面由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');
登录后复制

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

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

问问小宇宙
问问小宇宙

问问小宇宙是小宇宙团队出品的播客AI检索工具

问问小宇宙 77
查看详情 问问小宇宙

将以下代码添加到当前主题函数模板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如何设置禁止访问后台?的详细内容,更多请关注php中文网其它相关文章!

WPS零基础入门到精通全套教程!
WPS零基础入门到精通全套教程!

全网最新最细最实用WPS零基础入门到精通全套教程!带你真正掌握WPS办公! 内含Excel基础操作、函数设计、数据透视表等

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号