Intereting Posts
Блоки кода с WYSIWYG в блоге Недопустимый тип сообщения при нажатии кнопки «Фильтр» или «Применить» в WordPress admin Список сообщений 2 динамические боковые панели зарегистрированы, а не отображаются Различные файлы функций для каждого сайта в многоуровневой установке? название фильтра из короткого кода Сжатие $ content в ссылку с короткими кодами Построить на одном WordPress или другой установке? Проблема с изображением – загрузка нескольких изображений Я хочу запустить различные веб-сайты WordPress в одной базе данных Самый простой способ сопоставить контент (в json) с представлением (шаблоном)? WordPress получает разбиение на страницы на wpdb get_results Создание экземпляра wp_editor с пользовательскими кнопками tinyMCE Могут ли быть устранены определенные (сбой сайта) ограничения на WP_Query в shortcode? Как сделать большие изменения в реальном времени? Настроить загрузку медиафайлов WordPress и меню нового медиа-менеджера в добавить сообщение Metabox

Добавление метабокса на конкретную страницу подменю

Я создал эту страницу:

function wpdocs_register_my_setting() { add_submenu_page( 'edit.php?post_type=task', 'View Tasks', 'View Tasks', 'manage_options', 'view-tasks', 'view_tasks_submenu_page_callback' ); } function view_tasks_submenu_page_callback() { // html } add_action( 'admin_menu', 'wpdocs_register_my_setting' ); 

И я хочу добавить мета-окно только на эту страницу.

 function cd_meta_box_add() { add_meta_box( 'in-progress-metabox', 'In Progress', 'render_task_in_progress_metabox', 'task', 'normal', 'high' ); } function render_task_in_progress_metabox() { // html } add_action( 'add_meta_boxes', 'cd_meta_box_add' ); 

Но я не могу найти правильный ответ. Опять же, я хочу добавить этот мета-ящик на эту конкретную страницу. Я видел, как люди говорили о необходимости использовать do_meta_boxes но это не имеет смысла.

Я думаю, для этого вы хотите использовать API настройки WordPress .

Если вы предпочитаете мета-поле. Вы должны добавить do_action в свою функцию, которая отображает страницу ( view_tasks_submenu_page_callback ).

do_action( 'add_meta_boxes', $hook_id );

И добавьте do_meta_boxes($hook_id, $context, null) где вы хотите, чтобы ваши мета-поля отображались.

замените $hook_id на четвертый параметр функции add_meta_box.