Как создать пользовательский мета-бокс в WordPress

В этом посте я объясню, как создать пользовательский мета-бокс  в WordPress. Когда вы редактирует свой пост, страница состоит из множества мета-боксов по умолчанию, такие как: редактор, изображение записи, опубликовать, рубрики, теги и т.д. Эти мета-боксы находятся на правой стороне экрана редактирования.

Вы можете создавать свои собственные мета-боксы, путем добавления нескольких кодов в файл function.php вашей темы в WordPress или можете создать отдельный плагин для этого. Ниже примеры демонстрируют шаги, как создать пользовательские мета-боксы.

Как создать мета-бокс

Добавьте ниже крюк в add_meta_boxes действие и сделать вызов add_meta_box().

/* Добавить метабокс на экран редактирования поста */

add_action( 'add_meta_boxes', 'andreyex_add_custom_box' );

function andreyex_add_custom_box() {

    $screens = array( 'post', 'my_cpt' );

    foreach ( $screens as $screen ) {

        add_meta_box(

            'andreyex_box_id',            // Unique ID

            'Пользовательский заголовок метабокса',      // Заголовок мета-бокса

            'andreyex_inner_custom_box',  // Content callback

             $screen                      // тип поста

        );

    }

}

 

Создание формы мета-бокса

Ниже код будет создать форму для пользовательского meta box. Пожалуйста, измените приведенный ниже код согласно вашему требованию.

/* Печать содержимого бокса */

function andreyex_inner_custom_box( $post ) {

?>

   <label for="andreyex_field"> Описание для этой области </label>

    <select name="andreyex_field" id="andreyex_field" class="postbox">

        <option value="">Выберите что-то…</option>

        <option value="something">Что-то</option>

        <option value="else">Иначе</option>

    </select>

<?php

}

?>