Menambahkan halaman admin khusus


12

Saya ingin menambahkan halaman konten (file readme) di admin WordPress, sepertinya saya tidak bisa menemukan cara melakukan ini dalam codex - adakah yang bisa mengarahkan saya ke arah yang benar? Ini benar-benar hanya akan menjadi halaman sederhana dengan beberapa paragraf konten.

Jawaban:


18

Anda hanya perlu dua langkah:

  1. Menghubungkan ke tindakan admin_menu, daftarkan halaman dengan fungsi panggilan balik untuk mencetak konten.
  2. Dalam fungsi panggilan balik Anda, muat file dari plugin_dir_path( __FILE__ ) . "included.html".

Kode demo:

add_action( 'admin_menu', 'wpse_91693_register' );

function wpse_91693_register()
{
    add_menu_page(
        'Include Text',     // page title
        'Include Text',     // menu title
        'manage_options',   // capability
        'include-text',     // menu slug
        'wpse_91693_render' // callback function
    );
}
function wpse_91693_render()
{
    global $title;

    print '<div class="wrap">';
    print "<h1>$title</h1>";

    $file = plugin_dir_path( __FILE__ ) . "included.html";

    if ( file_exists( $file ) )
        require $file;

    print "<p class='description'>Included from <code>$file</code></p>";

    print '</div>';
}

Saya menambahkan contoh ke plugin demo T5 Admin Menu Demo untuk menunjukkan bagaimana melakukan ini dalam submenu dan dengan gaya OOP.


Baru saja mencoba ini dan terlihat mengagumkan tetapi apakah ada cara untuk melakukannya di submenu dari jenis posting kustom saya? sebagai lawan dari itu menjadi menu untuk dirinya sendiri.
user319940

Saya sudah mencoba 'show_in_menu' dalam jenis posting kustom tetapi ini kemudian memiliki menu yang tidak menampilkan halaman dan tidak menunjukkan "tambahkan baru" untuk jenis posting kustom juga.
user319940

Terpecahkan! untuk orang lain coba add_submenu_page dan cukup tambahkan parameter tambahan untuk slug induk, seperti diuraikan di sini: codex.wordpress.org/Function_Reference/add_submenu_page
user319940
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.