如何让WordPress只允许管理员访问后台

如何让WordPress只允许管理员访问后台

阅读数: 时间:2022-02-07 来源:发菜网站建设制作,专业做网站已十年 标签: WordPress教程 二次开发
         WordPress提供了好几种用户角色,不同角色拥有不同的权限,有的角色能访问网站后台,有的不能。如何让除了管理员都不能访问网站后台呢?一共有两个方案。第一个就是移除角色的某些权限,第二个方法就是将除了管理员的用户重定向,下面看看实现代码。

/*
 * 重置非管理员用户到首页
 */
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' );
将上面的代码添加到你的主题functions.php文件中即可,为了方便,也可以做成插件,插件代码如下。

<?php 
/*
Plugin Name: WordPress只允许管理员访问后台
Description: WordPress只允许管理员访问后台的一款插件。
Version: 1.0.0
*/


//插件菜单
add_action('admin_menu', 'dmd_htpb_submenu');
function dmd_htpb_submenu() {
add_options_page(__('后台屏蔽设置'), __('后台屏蔽设置'), 'administrator', 'dmd-htpb-plugin', 'add_dmd_htpb_submenu');
}
//插件配置页面
function add_dmd_htpb_submenu() {
if($_POST['dmd_htpb_hidden'] == 'y') {
update_option('dmd_htpb_url',$_POST['dmd_htpb_url']);


?>
<div id="message" style="background-color: green; color: #ffffff;">保存成功 !</div>
<?php
}
?>
<div>
<h2>后台屏蔽设置</h2>
<form action="" method="post" id="my_plugin_htpb_form">

<p>
<label for="dmd_htpb_options">重定向地址:</label>
</p>
<p>
<input name="dmd_htpb_url" style="min-width: 300px;" id="dmd_htpb_url" value="<?php echo esc_attr(get_option('dmd_htpb_url'))?>"/>

</p>

<p>
<input type="submit" name="submit" value="保存" class="button button-primary" />
<input type="hidden" name="dmd_htpb_hidden" value="y" />
</p>
</form>
</div>
<?php 
}
//后台屏蔽
function redirect_non_admin_users() {
if ( ! current_user_can( 'manage_options' ) && '/wp-admin/admin-ajax.php' != $_SERVER['PHP_SELF'] ) {
$url=get_option('dmd_htpb_url');
if(!$url){
$url=home_url();
}
wp_redirect($url);
exit;
}
}
add_action( 'admin_init', 'redirect_non_admin_users' );

?>
    到插件目录中新建一个文件夹,随意命名,然后复制上面的代码到插件目录中新建一个文件并保存,随意命名,后缀.php即可。

推荐文章/ Related products

最新案例/ LATEST CASES

发菜网络工作室外贸建站专注企业外贸网站设计制作

提供专业的外贸网站设计、小语种站群、Google ADS推广、谷歌SEO优化、AI大数据营销、SNS社媒营销
立即咨询
X微信咨询

截屏,微信识别二维码

微信号:gdfacai

(点击微信号复制,添加好友)

  打开微信

微信号已复制,请打开微信添加咨询详情!
电话咨询
在线客服
微信咨询
关注我们
在线留言
返回顶部
关闭

网站需求

您的公司
您的姓名*
您的手机*
您的需求
感谢您的咨询,我们会尽快给您回复!