Для регистрации метабокса в WordPress только для определенной страницы, вам потребуется немного дополнительного кода. Давайте разберем это по шагам:
1. **Создайте метабокс**:
function custom_page_metabox() { add_meta_box( 'custom_page_metabox_id', 'Custom Page Metabox', 'custom_page_metabox_callback', 'page', 'normal', 'high' ); } add_action('add_meta_boxes', 'custom_page_metabox'); function custom_page_metabox_callback( $post ) { // Вывод содержимого метабокса }
2. **Определите условие для отображения метабокса только на нужной странице**:
function show_custom_page_metabox( $post ) { if ( $post->ID == 123 ) { // Укажите ID нужной страницы add_meta_box('custom_page_metabox_id', 'Custom Page Metabox', 'custom_page_metabox_callback', 'page', 'normal', 'high'); } } add_action('add_meta_boxes_page', 'show_custom_page_metabox');
3. **Убедитесь, что метабокс отображается только на нужной странице**:
Это позволяет показывать метабокс только в редакторе нужной страницы. Вы можете добавить это правило после определения функции custom_page_metabox()
в шаге 1. Это необходимо, чтобы метабокс не отображался в других местах админ-панели.
function show_custom_page_metabox_in_editor( $post_type, $post ) { // Укажите ID нужной страницы if ( 'page' === $post_type && 123 === $post->ID ) { add_meta_box('custom_page_metabox_id', 'Custom Page Metabox', 'custom_page_metabox_callback', 'page', 'normal', 'high'); } } add_action('add_meta_boxes', 'show_custom_page_metabox_in_editor', 10, 2);
После выполнения этих шагов, метабокс будет отображаться только на странице с указанным ID. Не забудьте заменить 123
на реальный ID страницы, на которой вы хотите видеть метабокс, а также настроить вывод содержимого в функции custom_page_metabox_callback
.