2011-04-08 48 views
15

我最近進入WordPress插件開發,我想添加一個菜單頁面(左側菜單中的鏈接)。以前做題和WordPress的抄本說,這是簡單的調用:WordPress和調用未定義的函數add_menu_page()

add_menu_page($page_title, $menu_title, $capability, $menu_slug, $function, $icon_url, $position); 

然而,當我嘗試這在我的插件安裝文件,它告訴我,該功能是不確定的:

PHP Fatal error: Call to undefined function add_menu_page() 

這似乎就像根據文件做一件非常簡單的事情一樣,但我完全不知所措。任何幫助將非常感激:)

回答

34

我不知道你的代碼看起來不過這是怎麼了我只是測試和它的工作:

add_action('admin_menu', 'my_menu'); 

function my_menu() { 
    add_menu_page('My Page Title', 'My Menu Title', 'manage_options', 'my-page-slug', 'my_function'); 
} 

function my_function() { 
    echo 'Hello world!'; 
} 

看看這裏http://codex.wordpress.org/Administration_Menus

+1

謝謝,我的問題是,我沒有把調用放入函數。 – Gazillion 2011-04-11 14:52:55

+0

我不得不與其他人的代碼一起工作,它在生產服務器上工作,但不在我的開發服務器上工作。我改變了'add_action('init','my_menu');'add_action('admin_menu','my_menu');'它在兩臺服務器上都能正常工作,謝謝:) – GabLeRoux 2013-06-02 18:16:42

5

你是得到這個錯誤信息是因爲你在任何鉤子之外使用了函數add_menu_page,或者太早掛鉤了它。

函數add_menu_page獲取作爲第三個參數的能力,以確定用戶是否具有訪問菜單所需的功能,因此該功能僅在填充用戶功能時可用,因此您應該使用admin_menu掛鉤中的功能如下所示。

add_action('admin_menu', 'register_my_custom_menu_page'); 

function register_my_custom_menu_page(){ 
    add_menu_page( __('Custom Menu Title'), 'custom menu', 'manage_options', 'custom-page-slug', 'my_custom_menu_page'); 
} 

function my_custom_menu_page() { 
    echo __('This is custom menu page.'); 
} 

有關它的信息,請參閱以下WordPress代碼頁。

http://codex.wordpress.org/Function_Reference/add_menu_page

相關問題