add_menu_page()不能在wordpress中使用插件

时间:2013-07-14 16:23:30

标签: php wordpress oop

基本上,我正在为我的WordPress网站制作一个小插件,我遇到了我能找到的最烦人的问题,我目前的结构是这样的 的 /wp-content/plugins/videos/videos.php

PHP 文件中的内容如下:

if(!class_exists('WP_GraceMedia_Videos')) {

    class WP_GraceMedia_Videos {

        public function __construct() {
            add_action('admin_menu', array(&$this, 'add_menu_page'));
        }

        public function add_menu_page() {
            $page_title = "GraceMedia Video Management";
            $menu_title = "GraceMedia Videos";
            $capability = "edit_options";
            $menu_slug = "videos/videos-admin.php";
            $function = "";
            $icon_url = plugins_url('videos/images/icon.png');
            $position = "6";
            add_menu_page($page_title, $menu_title, $capability, $menu_slug, $function, $icon_url, $position);
        }

        public static function deactivate() {

        }

        public static function activate() {

        }

    }

    register_activation_hook(__FILE__, array('WP_GraceMedia_Videos', 'activate'));
    register_activation_hook(__FILE__, array('WP_GraceMedia_Videos', 'deactivate'));

}

这一切似乎都正确地格式化了我,它实际上是激活插件并让我取消激活它,它只是没有将项目添加到 WP管理员菜单

2 个答案:

答案 0 :(得分:1)

根据WP Codexadd_menu_page代码中的“edit_options”功能不存在。尝试将其更改为“edit_theme_options”。

答案 1 :(得分:-1)

使用' manage_options'而不是' edit_options'。