上一篇文章中我們説到了往 WordPress 後台 「外觀」 下面添加一個子菜單項的函數 add_theme_page(), 今天這篇教程繼續介紹另一個在 WordPress 後台添加菜單頁面的函數:add_menu_page(),這個函數是往後台添加頂級菜單先,也就是和 「外觀」 、 「插件」 等一樣的頂級菜單。

函數介紹如下:

  1. <?php   
  2. add_menu_page( $page_title$menu_title$capability$menu_slug$function$icon_url$position );   
  3. //page_title 頁面 title 標籤信息   
  4. //$menu_title 菜單標題   
  5. //capability  權限   
  6. //menu_slug  別名   
  7. //function  執行函數   
  8. //icon_url  菜單圖標 url 地址   
  9. //position  此菜單項在菜單中的位置,警告:如果兩個菜單項的位置屬性相同,其中一個可能要被覆蓋   
  10. ?>  

對於 function 參數,這個參數一般是函數名,如果在類中,要調用類的方法,使用 array(類名,函數名) 這樣的形式調用。如果這個參數為空的話,menu_slug 參數可以是一個文件路徑。

上面函數的 position 參數,默認的菜單項位置屬性如下:

2 Dashboard
 4 Separator
 5 Posts
 10 Media
 15 Links
 20 Pages
 25 Comments
 59 Separator
 60 Appearance
 65 Plugins
 70 Users
 75 Tools
 80 Settings
 99 Separator

好了,還是以實例來講解,這樣才能李菊福嘛
還是接着上一篇文章中測試的文件,(在默認的 Twenty Ten 主題中新建一個 myfuntions.php , 然後在 functions.php 文件中 include) 用編輯器打開我們的 myfunctions.php,文件中原來的代碼刪掉吧。

添加新代碼:

  1. <?php   
  2. function test_function(){   
  3.     add_menu_page( 'title 標題', '菜單標題', 'edit_themes', 'ashu_slug','display_function','',6);   
  4. }   
  5.   
  6. function display_function(){   
  7.     echo '<h1> 這是設置頁面</h1>';   
  8. }   
  9. add_action('admin_menu', 'test_function');   
  10. ?>  

可以看到,菜單位置是 6,比較一下可發現,它將會在 「文章」 的後面,看:

已經出現了一個頂級菜單頁面了。。。