接上文:wordpress后台添加顶级菜单 add_menu_page(),今儿再分享一下在 wordpress 后台侧边栏添加子菜单的体例,用到的函数是:add_submenu_page()
下面说说各参数:
几种情形:
函数用法:
add_submenu_page( $parent_slug, $page_title, $menu_title, $capability, $menu_slug, $function );
2、在文章处添加子菜单: add_submenu_page('edit.php', … );
4、在链接处添加子菜单: add_submenu_page('link-manager.php', … );
5、在页面处添加子菜单: add_submenu_page('edit.php?post_type=page', … );
7、在你自界说文章类型处添加子菜单: add_submenu_page('edit.php?post_type=your_post_type',…)
8、在外不美观处添加子菜单: add_submenu_page('themes.php', … );
9、在插件处添加子菜单: add_submenu_page('plugins.php', … );
12、在设置处添加子菜单: add_submenu_page('options-general.php', … );
}
$menu_title:(字符串) (必需) 显示的菜单名称,默认为空;
$capability:(字符串) (必需) 用户权限,界说了具有哪些权限的用户会看到这个子菜单(权限部门请看文章结尾处),默认为空,参照capability;
echo "<h2>顶级菜单的页面内容</h2>";
3、在媒体处添加子菜单: add_submenu_page('upload.php', … );
6、在评论处添加子菜单: add_submenu_page('edit-comments.php', … );
$menu_slug:(字符串) (必需) 显示在URl膳缦沔的菜单名称,默认为空;
$function:所有挪用的函数名称,经由过程挪用这个函数来显示这个子菜单页面的内容。
1、在仪表盘添加子菜单: add_submenu_page('index.php', … );
俩例子,先上图:
<?php
add_action('admin_menu', 'register_my_custom_submenu_page');
function register_my_custom_submenu_page() {
}
add_submenu_page( 'tools.php', '子菜单', '子菜单名称', 'manage_options', 'my-custom-submenu-page', 'my_custom_submenu_page_callback' );
function my_custom_submenu_page_callback() {
}
?>
2、在自界说的顶级菜单中添加子菜单
1、在顶级菜单“工具(tools)”下添加子菜单
<?php
add_menu_page(__('顶级菜单'),__('顶级菜单名称'),8,__FILE__,'my_function_menu');
$page_title:(字符串) (必需) 这个参数是子菜单的问题,将会显示在浏览器的问题栏,默认为空;
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');
11、在工具处添加子菜单: add_submenu_page('tools.php', … );
}
function my_function_menu() {
function my_function_submenu1() {
}
function add_diy_menu() {
echo "<h2>子菜单1的页面内容</h2>";
}
function my_function_submenu2() {
$parent_slug:(字符串) (必需)顶级菜单名称,可以在顶级菜单中插手我们的子菜单,也可以在自界说顶级菜单中插手子菜单;
10、在用户处添加子菜单: add_submenu_page('users.php', … );
echo "<h2>子菜单2的页面内容</h2>";
add_action('admin_menu','add_diy_menu');
echo '<h3>子菜单的页面内容</h3>';
?>
最后附上:各个用户脚色所具有的权限,可以参看这个对应关系表:Capability vs. Role Table,横坐标是用户脚色,纵坐标是用户权限,中心蓝色高亮部门为各个脚色所拥有的权限。