Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wordpress插件自定义选项页面不可访问_Wordpress - Fatal编程技术网

Wordpress插件自定义选项页面不可访问

Wordpress插件自定义选项页面不可访问,wordpress,Wordpress,我正在创建我的第一个WP插件类,似乎遇到了选项页面生成的问题。 我有一个admin_init方法来创建一个新页面(目前在顶级菜单中),它工作正常,但单击菜单中的链接总是会将我发送到“您不允许访问此页面”页面 奇怪的是,在调试这个问题时,我看到当插件被激活时,对我的页面的引用被添加到$\u registered\u pages数组中。但在单击链接后进行调试时,$\u registered\u pages数组不包含对我的插件的引用。另外,当我返回站点时,问题发生后,菜单选项消失了 这是我的admin

我正在创建我的第一个WP插件类,似乎遇到了选项页面生成的问题。 我有一个admin_init方法来创建一个新页面(目前在顶级菜单中),它工作正常,但单击菜单中的链接总是会将我发送到“您不允许访问此页面”页面

奇怪的是,在调试这个问题时,我看到当插件被激活时,对我的页面的引用被添加到$\u registered\u pages数组中。但在单击链接后进行调试时,$\u registered\u pages数组不包含对我的插件的引用。另外,当我返回站点时,问题发生后,菜单选项消失了

这是我的admin_init方法,它挂接在主插件页面中:

public static function admin_menu() {
    $hook = add_menu_page(
        self::$title,
        self::$menuTitle,
        'manage_options',
        self::$slug,
        array('DP_Quora_Profile_Scraper', 'load_options_page')
    );

    add_action('load-' . $hook, array('DP_Quora_Profile_Scraper', 'save_options_page'));
}
我正在调试并看到缺少的page ref函数是wp admin/includes/plugin.php中的user\u can\u access\u admin\u page()

我没有使用设置API,因为我真的不喜欢它,而且我的插件需要它自己的DB表,所以我将我的所有登录都封装在我的类中

关于我的菜单页面为何/如何消失的任何想法

Wordpress版本是5.3。新开发站点,没有其他插件,默认主题

[编辑] 显示调试会话的附加屏幕截图:您可以看到添加了$\u registered\u pages条目。

感谢所有人的帮助/意见。
保罗

好的,发现了这个问题……非常烦人

我的类需要初始化,同时在每个admin_init和admin_菜单上注册钩子


这是一堆毫无意义的处理

必须在每个页面上调用
add\u menu\u page
。为什么要测试
$初始化
?尝试过,但没有效果。菜单选项最初出现,但单击它会显示“禁止访问”页面,并且$\u registered\u pages条目再次丢失…奇怪…返回调试器。我发现了主要问题,该页面必须添加到操作
管理菜单上。笔记上写着:是的,我在你第一次发表评论后就改变了……我会更新我的post@Kaperto向右微移的Thx:)