add_menu_page () dengan nama berbeda untuk item submenu pertama


85

The add_menu_pagedokumentasi mengatakan untuk lulus judul menu sebagai parameter kedua:

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

Saat menambahkan lebih banyak halaman nanti melalui add_submenu_page, halaman utama menjadi entri pertama dalam submenu:

masukkan deskripsi gambar di sini


Namun, saya ingin item pertama dalam daftar memiliki nama yang berbeda (tetapi masih menunjuk ke halaman yang sama), seperti yang dilakukan Wordpress sendiri:

masukkan deskripsi gambar di sini


Bagaimana saya bisa mencapainya di plugin saya?


Jawaban:


113

Anda dapat membuat 'siput' untuk halaman submenu sama dengan halaman tingkat atas, dan mereka akan menunjuk ke tempat yang sama:

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

Misalnya

masukkan deskripsi gambar di sini


Ini akan menghasilkan entri duplikat, karena Wordpress secara otomatis membuat halaman submenu untuk halaman utama.
— MegaHit

4
Saya ingat membaca sekilas kode inti minggu lalu dan menemukan catatan yang berbunyi seperti: "Tambahkan item submenu default JIKA PENGGUNA belum SUDAH SUDAH". Ia memeriksa untuk melihat apakah ada item submenu yang menunjuk ke item tingkat atas. Jika ada, itu tidak menambah default.
— Michael Lewis

Saya ingin ketika saya membuat menu kustom saya ingin menampilkan beberapa tabel dan data karena tab lain menampilkan tautan tutorial atau bantuan fungsi akan dihargai
— Aitazaz Khan

Persis apa yang saya cari. Thanx: P
— Rob DA

-3
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
    ); 

jika nama sub-menu pertama berbeda, buat siput yang sama dari induk dan anak pertama dan panggil fungsi yang sama


2
Apa bedanya dengan jawaban yang diterima? Dan untuk tindakan apa ini harus dikaitkan.
— bravokeyl

-4

Cukup tambahkan ini:

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

Untuk keperluan debugging, Anda dapat melakukan print_r($menu)untuk memeriksa seluruh menu WP.


7
Retas hackedy. Gunakan API!
— Richard Sweeney
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.