Как зарегистрировать метабокс WordPress, только для одной страницы?

Для регистрации метабокса в 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.