您可以使用add_menu_page()
自己添加链接。简单使用#
作为菜单段塞。然后您可以使用add_submenu_page()
您可以自己添加其他菜单项。
另一种选择是摆弄全球$menu
大堆拿this answer 作为基础。
编辑:根据评论,需要一个顶部(&a);子菜单项
以下演示(mu-)插件显示了如何添加和删除菜单项,从而自定义重建菜单项。“魔法”是使用全球
submenu
, 在里面循环
_wp_menu_output()
在里面
~/wp-admin/menu-header.php
. 正好在此函数之前运行的筛选器是
parent_file
滤器使用它来拦截和更改全局。这样,您可以使用
remove_submenu_page()
, 当单击主菜单项时,子菜单项的默认核心行为仍然可见。
(注:自定义menu_icon
可在后期类型注册期间进行设置。)
<?php
/** Plugin Name: (#170620) Menu Pages tests */
// Rebuild the Menu
add_action( \'admin_menu\', function()
{
$slug = \'edit.php?post_type=members\';
remove_submenu_page( $slug, $slug );
} );
// Set the Main menu items anchor back to the list page
add_filter( \'parent_file\', function( $parent_file )
{
$slug = \'edit.php?post_type=members\';
$GLOBALS[\'submenu\'][ $slug ][10][2] = $slug;
return $parent_file;
} );
// Register the "members" post type
add_action( \'wp_loaded\', function()
{
register_post_type( \'members\', [
\'public\' => true,
\'menu_icon\' => \'dashicons-universal-access\',
\'labels\' => [
\'name\' => \'Members\',
\'singular_name\' => \'Member\',
\'add_new\' => \'Add New\',
\'add_new_item\' => \'Add New Member\',
\'edit_item\' => \'Edit Member\',
\'new_item\' => \'New Member\',
\'view_item\' => \'View Member\',
\'search_items\' => \'Search Members\',
\'not_found\' => \'No members found.\',
\'not_found_in_trash\' => \'No members found in Trash.\',
\'parent_item_colon\' => null,
\'all_items\' => \'All Members\',
],
] );
} );