Dodanie niestandardowej strony administratora


12

Chcę dodać stronę treści (plik readme) do administratora WordPress, nie mogę znaleźć sposobu na zrobienie tego w kodeksie - czy ktoś może wskazać mi właściwy kierunek? Będzie to dosłownie zwykła strona z kilkoma akapitami treści.

Odpowiedzi:


18

Potrzebujesz tylko dwóch kroków:

  1. Dołącz do akcji admin_menu, zarejestruj stronę z funkcją wywołania zwrotnego, aby wydrukować zawartość.
  2. W funkcji wywołania zwrotnego załaduj plik z plugin_dir_path( __FILE__ ) . "included.html".

Kod demonstracyjny:

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

Dodałem przykład do mojej wtyczki demonstracyjnej Demo menu administracyjnego T5, aby pokazać, jak to zrobić w podmenu i stylu OOP.


Właśnie to wypróbowałem i wygląda świetnie, ale czy jest jakiś sposób, aby mieć to w podmenu z mojego niestandardowego typu postu? w przeciwieństwie do tego, że jest to menu dla siebie.
user319940,

Próbowałem „show_in_menu” w niestandardowym typie postu, ale ma to menu, które nie pokazuje strony i nie pokazuje „dodaj nowy” dla niestandardowego typu postu.
user319940

Rozwiązany! dla każdego innego wypróbuj add_submenu_page i po prostu dodaj dodatkowy parametr dla nadrzędnego ślimaka, jak opisano tutaj: codex.wordpress.org/Function_Reference/add_submenu_page
319940
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.