WordPress 在開發插件過程經常要使用到頂級菜單或者子菜單,本文就介紹如何在 WordPress 後台添加菜單教程。

WordPress 後台添加頂級菜單

WordPress 後台添加頂級菜單使用的函數是:

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

參數説明:

  • page_title 頁面 title 標籤信息
  • $menu_title 菜單標題
  • capability 權限
  • menu_slug 別名
  • function 執行函數
  • icon_url 菜單圖標 url 地址
  • position 此菜單項在菜單中的位置,警告:如果兩個菜單項的位置屬性相同,其中一個可能要被覆蓋

實例:

add_menu_page(__('My Menu Page'), __('My Menu'), 'edit_themes', 'my_new_menu', 'my_menu_render', '', 7);

function my_menu_render() {
    global $title;
    ?>
        <h2><?php echo $title;?></h2>
        My New Menu Page!!
        <?php
}

WordPress 後台添加子菜單

WordPress 後台添加子菜單使用的函數是:

add_submenu_page( $parent_slug, $page_title, $menu_title, $capability, $menu_slug, $function );

參數説明:

  • parent_slug-父級菜單項的別名
  • page_title–頁面的 title 信息
  • menu_title-菜單標題
  • capability-權限
  • menu_slug-別名
  • function-執行的函數

實例:

// 添加一個子菜單
 add_submenu_page('my_new_menu', __('My SubMenu Page'), __('My SubMenu'), 'edit_themes', 'my_new_submenu', 'my_submenu_render');
 function my_submenu_render() {
	global $title;
	?>
        <h2><?php echo $title;?></h2>
        My New Menu Page!!
        <?php
}

WordPress 後台添加菜單教程完整代碼

將下列代碼複製到你主題的 functions.php 文件中即可看到效果,或者可以在插件中使用。

function my_add_pages() {
    add_menu_page(__('My Menu Page'), __('My Menu'), 'edit_themes', 'my_new_menu', 'my_menu_render', '', 7);
    add_submenu_page('my_new_menu', __('My SubMenu Page'), __('My SubMenu'), 'edit_themes', 'my_new_submenu', 'my_submenu_render');
}

function my_menu_render() {
    global $title;
    ?>
        <h2><?php echo $title;?></h2>
        My New Menu Page!!
        <?php
}

function my_submenu_render() {
    global $title;
    ?>
        <h2><?php echo $title;?></h2>
        My New Menu Page!!
        <?php
}

add_action('admin_menu', 'my_add_pages');