wordpress二次开发:后台添加顶级菜单add_menu_page()和子菜单 add_submenu_page()

2013-05-27 12:35 阅读 797 次 评论关闭

添加顶级菜单子菜单我们都知道很容易的只要查看次啊api就知道了。但是我们今天主要讲“在自定义的主菜单上添加子菜单”

比如:

顶级菜单

<?php add_menu_page( $parent_slug$page_title$menu_title$capability,$menu_slug$function ); ?>

参数

$page_title
(字符串) (必须) 当点击菜单后将内容显示在标题标签上(Title Tag于浏览器上),默认为空。
$menu_title
(字符串) (必须) 显示的菜单名称,默认为空。
$capability
(字符串) (必须) 此菜单使用的权限,默认为空,参照capability
$menu_slug
(字符串) (必须) 显示在URl上面的菜单名称,默认为空。
$function
返回的方法名称
$icon_url
(字符串) (可选) 显示的菜单图标,可以使用plugin_dir_url( __FILE__ ),图标宽高为16像素。
$position

(整数)(可选)通过使用十进制数,而不是整数值,例如,可以减少冲突风险的63.3而不是63。

默认值:底部的菜单结构

菜单位置

样例:

<?php
add_action('admin_menu', 'register_custom_menu_page');

function register_custom_menu_page() {
   add_menu_page('custom menu title', 'custom menu', 'add_users', 'myplugin/myplugin-index.php', '',   plugins_url('myplugin/images/icon.png'), 6);
}

?>

子菜单

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

参数:

$parent_slug:(字符串) (必须)顶级菜单名称,可以在顶级菜单中加入我们的子菜单,也可以在自定义顶级菜单中加入子菜单;

几种情况:

1、在仪表盘添加子菜单: add_submenu_page(‘index.php’, … );

2、在文章处添加子菜单: add_submenu_page(‘edit.php’, … );

3、在媒体处添加子菜单: add_submenu_page(‘upload.php’, …);

4、在链接处添加子菜单: add_submenu_page(‘link-manager.php’, …);

5、在页面处添加子菜单: add_submenu_page(‘edit.php?post_type=page’, …);

6、在评论处添加子菜单: add_submenu_page(‘edit-comments.php’, … );

7、在你自定义文章类型处添加子菜单: add_submenu_page(‘edit.php?post_type=your_post_type’,…)

8、在外观处添加子菜单: add_submenu_page(‘themes.php’, …);

9、在插件处添加子菜单: add_submenu_page(‘plugins.php’, …);

10、在用户处添加子菜单: add_submenu_page(‘users.php’, … );

11、在工具处添加子菜单: add_submenu_page(‘tools.php’,…);

12、在设置处添加子菜单: add_submenu_page(‘options-general.php’, … );

$page_title:(字符串) (必须) 这个参数是子菜单的标题,将会显示在浏览器的标题栏,默认为空;

$menu_title:(字符串) (必须) 显示的菜单名称,默认为空;

$capability:(字符串) (必须) 用户权限,定义了具有哪些权限的用户会看到这个子菜单(权限部分请看文章结尾处),默认为空,参照capability;

$menu_slug:(字符串) (必须) 显示在URl上面的菜单名称,默认为空;

$function:所有调用的函数名称,通过调用这个函数来显示这个子菜单页面的内容。

样例:(在顶级菜单“工具”下添加子菜单)

add_action('admin_menu', 'register_my_custom_submenu_page');

function register_my_custom_submenu_page() {
	add_submenu_page( 'tools.php', 'My Custom Submenu Page', 'My Custom Submenu Page', 'manage_options', 'my-custom-submenu-page', 'my_custom_submenu_page_callback' ); 
}

function my_custom_submenu_page_callback() {
	echo '<h3>My Custom Submenu Page</h3>';
}
最重要的在自定义的顶级菜单中添加子菜单:
function add_diy_menu() { 
 add_menu_page(__(‘顶级菜单’),__(‘顶级菜单名称’),8,__FILE__,’my_function_menu’); 
 add_submenu_page(__FILE__,’子菜单1’,’子菜单名称1’,8,’your-admin-sub-menu1’,’my_function_submenu1’); 
 add_submenu_page(__FILE__,’子菜单2’,’子菜单名称2’,8,’your-admin-sub-menu2’,’my_function_submenu2’); 
} 
function my_function_menu() { 
 echo “<h2>顶级菜单的页面内容</h2>”; 
} 
function my_function_submenu1() { 
 echo “<h2>子菜单1的页面内容</h2>”; 
} 
function my_function_submenu2() { 
 echo “<h2>子菜单2的页面内容</h2>”; 
} 
add_action(‘admin_menu’,’add_diy_menu’);
版权声明:本文著作权归原作者所有,欢迎分享本文,谢谢支持!
转载请注明:wordpress二次开发:后台添加顶级菜单add_menu_page()和子菜单 add_submenu_page() | 猎微网

评论已关闭!