Thêm một trang quản trị tùy chỉnh


12

Tôi muốn thêm một trang nội dung (tệp readme) trong quản trị viên WordPress, tôi dường như không thể tìm thấy cách thực hiện việc này trong bộ mã - ai đó có thể chỉ cho tôi đi đúng hướng không? Nó thực sự sẽ chỉ là một trang đơn giản với một vài đoạn nội dung.

Câu trả lời:


18

Bạn chỉ cần hai bước:

  1. Tham gia vào hành động admin_menu, đăng ký trang với chức năng gọi lại để in nội dung.
  2. Trong chức năng gọi lại của bạn tải tập tin từ plugin_dir_path( __FILE__ ) . "included.html".

Mã trình diễn:

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

Tôi đã thêm một ví dụ vào plugin demo của mình Trình quản lý trình đơn T5 Admin để hiển thị cách thực hiện việc này trong menu phụ và theo kiểu OOP.


Chỉ cần thử cái này và trông tuyệt vời nhưng có cách nào để có cái này trong menu con từ loại bài đăng tùy chỉnh của tôi không? trái ngược với nó là một thực đơn cho chính nó.
dùng319940

Ive đã thử 'show_in_menu' trong loại bài đăng tùy chỉnh nhưng sau đó có một menu không hiển thị trang và không hiển thị "thêm mới" cho loại bài đăng tùy chỉnh.
dùng319940

Đã giải quyết! đối với bất kỳ ai khác hãy thử add_submenu_page và chỉ cần thêm tham số bổ sung cho sên cha, như được nêu ở đây: codex.wordpress.org/Function_Reference/add_submenu_page
user319940 21/03
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.