wordpress插件:调用未定义的函数add_menu_page()

时间:2011-08-15 17:35:46

标签: php oop wordpress plugins

我正在使用wordpress插件,但我决定使用OOP而不是函数编程;但是我收到了这个奇怪的错误:

错误消息:

调用未定义的函数add_menu_page(),同时我确信一切都按预期工作

守则:

class bdmin{

    public function __construct(){
        add_action('admin_menu', $this->create_admin_menu());
    }

    public function create_admin_menu(){
        // Create NEW top-level menu
        add_menu_page('bdmin Settings', 'bdmin Settings', 'administrator', __FILE__, array( &$this, 'create_admin_page'));

        // Register our Settings
        add_action( 'admin_init', $this->register_admin_settings() );
    }
}

我用$admin = new bdmin();

启动代码

最好的问候

3 个答案:

答案 0 :(得分:3)

这应该删除错误:

<?php
    if(!empty($value['id'])) {
    class bdmin{
        public function __construct(){
            add_action('admin_menu', $this->create_admin_menu());
        }
        public function create_admin_menu(){
            // Create NEW top-level menu
            add_menu_page('bdmin Settings', 'bdmin Settings', 'administrator', __FILE__, array( &$this, 'create_admin_page'));
            // Register our Settings
            add_action( 'admin_init', $this->register_admin_settings() );
        }
    }
}
?>

答案 1 :(得分:2)

要解决这个问题,我需要做的是使用这些参数调用名为add_action的函数。

add_action('admin_menu', array( &$this , 'create_admin_menu'));

答案 2 :(得分:0)

确保在顶部包含头文件,以便进行WP函数调用

<?php require('{correct_path}/wp-blog-header.php');