add_menu_page () com nome diferente para o primeiro item do submenu

76

A % documentação deadd_menu_page diz para passar o título do menu como o segundo parâmetro:

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

Ao adicionar mais páginas depois por add_submenu_page , a página principal torna-se a primeira entrada no submenu:

Noentanto,queroqueoprimeiroitemdalistatenhaumnomediferente(masaindaaponteparaamesmapágina),domesmomodoqueopróprioWordpress:

Como eu poderia conseguir isso no meu plugin?

    
por MegaHit 28.09.2012 / 01:13
fonte

3 respostas

96

Você pode tornar o 'slug' para a página de submenu igual ao da página de nível superior e eles apontarão para o mesmo local:

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' );
}

Por exemplo,

    
por Michael Lewis 28.09.2012 / 01:36
fonte
-2
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
    ); 

se o nome diferente do primeiro submenu criar o mesmo slug do pai e do primeiro filho e chamar a mesma função

    
por Umesh Maliya 29.09.2016 / 08:13
fonte
-3

Adicione simplesmente isto:

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

Para fins de depuração, você pode fazer um print_r($menu) para verificar todo o menu do WP.

    
por Laurent 18.06.2013 / 07:37
fonte