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

Как на WordPress зарегистрировать метаобласть (метабокс), чтобы она отображалась ТОЛЬКО на главной странице, а не на всех страницах? В текущей конфигурации она регистрируется для типа записи "страница" и выводится на всех страницах. Как это изменить, чтобы ограничить вывод только на главную страницу? Благодарю.
  • 21 апреля 2024 г. 4:40
Ответы на вопрос 2
Для того чтобы создать метабокс, который будет отображаться только на определенной странице в WordPress, можно воспользоваться условием is_page() в функции, которая добавляет этот метабокс. 

Пример кода для создания метабокса, который отображается только на определенной странице:

```php
// Функция для добавления метабокса
function custom_meta_box() {
    // Проверяем, является ли текущая страница главной страницей
    if( is_front_page() ) {
        add_meta_box( 'custom_meta_box_id', 'Custom Meta Box Title', 'custom_meta_box_content', 'post', 'normal', 'high' );
    }
}

// Функция для отображения содержимого метабокса
function custom_meta_box_content() {
    // Здесь можно разместить HTML-код для отображения полей метабокса
}

// Хук для добавления метабокса
add_action( 'add_meta_boxes', 'custom_meta_box' );
```

В данном примере метабокс будет отображаться только на главной странице сайта, так как использовано условие is_front_page(). Вместо этого условия можно также использовать другие условия WordPress, такие как is_page('название-страницы') или is_page(ID_страницы), чтобы определить на какой именно странице должен отображаться метабокс.

Надеюсь, это поможет вам создать метабокс, который будет отображаться только на определенной странице в WordPress.
Похожие вопросы