Loại bỏ trùng lặp chính - menu con trong quản trị viên?


11

Khi tôi sử dụng add_menu_page& add_submenu_pageđể thêm các mục menu,

add_menu_page( 'Forms', 'Forms', 'administrator', 'forms', 'forms_job_menupage_cb' );
add_submenu_page( 'forms', 'Job Applications', 'Job Applications', 'administrator', 'job-applications', 'forms_job_menupage_cb' );
add_submenu_page( 'forms', 'Quote Requests', 'Quote Requests', 'administrator', 'quote-req', 'forms_req_menupage_cb' );
add_submenu_page( 'forms', 'Contact', 'Contact', 'administrator', 'contact', 'forms_contact_menupage_cb' );

Tôi sẽ nhận được một cái gì đó như

  • Các hình thức
    • Các hình thức
    • Đơn xin việc
    • Trích dẫn yêu cầu
    • Liên lạc

Có thể tạo ra nó để nó trở thành

  • Các hình thức
    • Đơn xin việc
    • Trích dẫn yêu cầu
    • Liên lạc

Nói cách khác, Biểu mẫu sẽ liên kết với Ứng dụng Công việc và tôi không muốn có thêm mục con Biểu mẫu phụ

Câu trả lời:


10

Xin chào @JM tại nơi làm việc:

Có, thật không may là trang menu con được thêm vào cho mỗi trang menu. Sẽ thật tốt nếu có một lựa chọn nhưng than ôi, hiện tại không có .

Để xóa tùy chọn trang menu con trong WordPress 3.1 hoặc sử dụng tuyệt vời remove_submenu_page()với mã như thế này trong functions.phptệp chủ đề của bạn hoặc trong .phptệp của plugin bạn có thể đang viết:

add_action( 'admin_menu', 'yoursite_admin_menu' );
function yoursite_admin_menu() {
  add_menu_page( 'Forms', 'Forms', 'administrator', 'forms', 'forms_job_menupage_cb' );
  add_submenu_page( 'forms', 'Job Applications', 'Job Applications', 'administrator', 'job-applications', 'forms_job_menupage_cb' );
  add_submenu_page( 'forms', 'Quote Requests', 'Quote Requests', 'administrator', 'quote-req', 'forms_req_menupage_cb' );
  add_submenu_page( 'forms', 'Contact', 'Contact', 'administrator', 'contact', 'forms_contact_menupage_cb' );
  remove_submenu_page('forms','forms');
}

Nếu bạn vẫn đang sử dụng WordPress 3.0, bạn phải có unset()một yếu tố của biến toàn cục $submenunhư thế này:

add_action( 'admin_menu', 'yoursite_admin_menu' );
function yoursite_admin_menu() {
  add_menu_page( 'Forms', 'Forms', 'administrator', 'forms', 'forms_job_menupage_cb' );
  add_submenu_page( 'forms', 'Job Applications', 'Job Applications', 'administrator', 'job-applications', 'forms_job_menupage_cb' );
  add_submenu_page( 'forms', 'Quote Requests', 'Quote Requests', 'administrator', 'quote-req', 'forms_req_menupage_cb' );
  add_submenu_page( 'forms', 'Contact', 'Contact', 'administrator', 'contact', 'forms_contact_menupage_cb' );
  unset($GLOBALS['submenu']['forms'][0]);
}

Rất cám ơn ........... :)
Ridwan Pujakesuma

1

Tôi đã phải thêm_submenu_page, sau đó xóa nó (wp 4.0.1)

add_menu_page( 'Admin Tools', 'Admin Tools', 'manage_options','parent', '__return_null','', "70.23423" );
    // this 'hides' the extra.  actually, just makes the text nothing: ''  
    add_submenu_page( 'parent', '',     '', 'manage_options',   'parent',   '__return_null' );
    //ah, but this removes it completely (you need to add it, then remove it :/     
    remove_submenu_page('parent','parent');

1

Tôi sẽ đề nghị giữ lại mục menu bổ sung, vì đó là cách tất cả các menu WP khác hoạt động. . 'Công cụ', 'Công cụ có sẵn'). Tôi nghĩ thật tốt khi gắn bó với cùng một mô hình, vì vậy tôi thường đổi tên mục phụ đầu tiên như thế này:

<?php
add_menu_page( 'Plugin Name', 'Plugin Name', 'read', 'plugin-slug', $callback );
add_submenu_page( 'plugin-slug', 'Plugin Overview', 'Overview', 'read', 'plugin-slug', $callback );

1

Gán con sên con đầu tiên tương tự như menu cha. Trong trường hợp của bạn, thay thế 'ứng dụng công việc' bằng sên của menu chính 'biểu mẫu'.

add_menu_page( 'Forms', 'Forms', 'administrator', 'forms', 'forms_job_menupage_cb' );
add_submenu_page( 'forms', 'Job Applications', 'Job Applications', 'administrator', 'forms', 'forms_job_menupage_cb' );
add_submenu_page( 'forms', 'Quote Requests', 'Quote Requests', 'administrator', 'quote-req', 'forms_req_menupage_cb' );
add_submenu_page( 'forms', 'Contact', 'Contact', 'administrator', 'contact', 'forms_contact_menupage_cb' );
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.