add_menu_page文档说要传递菜单标题作为第二个参数:

add_menu_page('Page Title', 'Menu Title', ...);


以后通过add_submenu_page添加更多页面时,主页成为子菜单中的第一项:




但是,我希望列表中的第一项具有不同的名称(但仍指向同一页面),即Wordpress本身的方式可以吗:




如何在我的插件中实现?

评论

我发现了一个针对相同目的的非常有用的博客tekina.info/add-menus-submenus-wordpress-admin-panel

#1 楼

您可以使子菜单页面的“子弹”等于顶级页面的子弹,它们将指向同一位置:

add_action('admin_menu', 'my_menu_pages');
function my_menu_pages(){
    add_menu_page('My Page Title', 'My Menu Title', 'manage_options', 'my-menu', 'my_menu_output' );
    add_submenu_page('my-menu', 'Submenu Page Title', 'Whatever You Want', 'manage_options', 'my-menu' );
    add_submenu_page('my-menu', 'Submenu Page Title2', 'Whatever You Want2', 'manage_options', 'my-menu2' );
}


例如,



评论


这将导致重复的条目,因为Wordpress会自动为主页创建一个子菜单页。

– MegaHit
2012-09-27 23:37



我记得上周浏览了核心代码,并遇到了一条注释,内容类似:“如果用户尚未添加默认子菜单项”。它检查是否有子菜单项指向顶层项目。如果存在,则不添加默认值。

–迈克尔·刘易斯
2012-09-27 23:40

我想在创建自定义菜单时希望显示一些表和数据,而其他选项卡则显示教程链接或某些功能帮助

– Aitazaz Khan
16-10-23在19:40

正是我想要的。谢谢:P

–排D.
18/09/10在15:13

这对我来说仍然很好...

– Sajjadur Ra​​hman Sagor
4月6日22:01

#2 楼

使父菜单项和子菜单的子段相同(第一个项),如下所示
function actions_recent_bids_add_admin_page(){

add_menu_page('Recent Bids', 'Auction Reports', 'manage_options','wc-auction-reports','actions_recent_bids_list','dashicons-chart-area', 56);   
  
add_submenu_page(
    'wc-auction-reports',               // parent slug
    'Recent Bids',                      // page title
    'Recent Bids',                      // menu title
    'manage_options',                   // capability
    'wc-auction-reports',               // slug
    'acutions_customers_spendings_list' // callback
); 


add_submenu_page(
    'wc-auction-reports',               // parent slug
    'Customer Spending',                // page title
    'Customer Spending',                // menu title
    'manage_options',                   // capability
    'wc-acutions-customers-spendings',  // slug
    'acutions_customers_spendings_list' // callback
); 
 
add_submenu_page(
    'wc-auction-reports',          // parent slug
    'Customer Bids',               // page title
    'Customer Bids',               // menu title
    'manage_options',              // capability
    'wc-acutions-customers-bids',  // slug
    'acutions_customers_bids_list' // callback
);  

}

add_action('admin_menu','actions_recent_bids_add_admin_page'); 


#3 楼

只需添加以下内容:

$submenu['my-menu'][0][0] = 'My New Menu Title';


出于调试目的,您可以执行print_r($menu)来检查整个WP菜单。

评论


骇客骇客。使用API​​!

–理查德·斯威尼(Richard Sweeney)
16年4月12日在7:51

#4 楼

add_submenu_page(
        'tut_theme_settings',       // parent slug
        'Front Page Elements 2',    // page title
        'Front Page 2',             // menu title
        'manage_options',           // capability
        'tut_theme_settings2',      // slug
        'theme_front_page_settings' // callback
    ); 


如果第一个子菜单的名称不同,则创建相同的父级和第一个子级,并调用相同的函数

评论


与接受的答案有何不同?以及应该采取何种行动。

–bravokeyl
16-9-29 7:00