为什么运行管理检查会抛出500错误?我正在调用is_Super_admin();

时间:2013-10-03 作者:Branndon

我有一个我写的插件。一个用户的主题使用蒙版仪表板在其网站上添加列表时遇到兼容性问题。如果用户已登录,并且是参与者,但不是管理员,则我对is\\u admin()的检查将返回true,因为从技术上讲,它们位于仪表板页面上。

所以我的代码检查它们是否是admin,然后运行一系列函数。检查之一是他们是否有权限管理选项。如果他们没有管理选项的权限,它就会失效。这是主题的一个问题,所以我简单地用以下内容包装了我的add\\u action标记

if ( is_super_admin() ) {   
    add_action( \'admin_init\', \'myplugin_register\');
    add_action( \'admin_menu\', \'myplugin_menu\' );    
}
当任何管理员访问站点的wp admin区域时,这会引发500错误。我不知道为什么一个简单的检查用户是否是超级管理员会导致网站崩溃。

有关is\\u super\\u admin()的详细信息,请单击此处http://codex.wordpress.org/Function_Reference/is_super_admin

1 个回复
最合适的回答,由SO网友:s_ha_dum 整理而成

从粘贴箱:

if (!function_exists(\'wp_get_current_user\')) {
        include_once( ABSPATH . \'wp-admin/includes/pluggable.php\' );
}

if ( is_super_admin() ) {      
        add_action( \'admin_init\', \'myplugin_register\');
        add_action( \'admin_menu\', \'myplugin_menu\' );   
}
上没有文件wp-admin/includes/pluggable.php. pluggable.php 位于wp-includes/pluggable.php, 但我看不出你有什么理由故意把那个文件包括进去。它加载前端和后端。

结束

相关推荐

将wp-admin中的数据发布到外部数据库

我试图制作一个私有表单,将数据提交到外部数据库中,以便以后可以从数据库中提取并在页面上显示记录。到目前为止,我一直在尝试创建一个插件,允许我在wp admin中填写表单,但当我尝试将数据发布到另一个页面以存储数据时,我得到一个“您没有足够的权限访问此页面”错误我基本上是在尝试创建一个库存管理系统,以便在我拥有的多个网站上显示产品。对于任何可能帮助我找到解决方案的进一步问题,我将尽快作出回应。感谢您提供的任何帮助。下面是我在代码中尝试做的一个示例<?php add_action(\'admin