Создание метабоксов в административной панели WordPress: назначение, параметры, примеры, безопасность
Быстрая навигация по записи

Описание функции add_meta_box()

Функция add_meta_box() позволяет разработчикам добавлять пользовательские метабоксы на экраны редактирования записей и страниц в админке WordPress. Она предоставляет возможность расширить интерфейс управления контентом, добавляя дополнительную информацию или функциональность.

Метабоксы могут содержать поля ввода, кнопки и другие элементы управления для взаимодействия с пользователем.

Параметры

$id

Тип: string

Обязательный: Да

Описание: Уникальный идентификатор метабокса

Возможные значения:

$title

Тип: string

Обязательный: Да

Описание: Заголовок метабокса, который будет отображаться в интерфейсе

Возможные значения:

$callback

Тип: callable

Обязательный: Да

Описание: Функция обратного вызова, которая выводит содержимое метабокса

Возможные значения:

$screen

Тип: string|array

Обязательный: Нет

По умолчанию: null

Описание: Экран(ы), на котором(ых) будет отображаться метабокс (например, ‘post’, ‘page’)

Возможные значения:

0: post

1: page

2: dashboard

3: custom_post_type

$context

Тип: string

Обязательный: Нет

По умолчанию: ‘normal’

Описание: Контекст отображения метабокса (‘normal’, ‘side’, ‘advanced’)

Возможные значения:

0: normal

1: side

2: advanced

$priority

Тип: string

Обязательный: Нет

По умолчанию: ‘default’

Описание: Приоритет метабокса (‘high’, ‘core’, ‘default’, ‘low’)

Возможные значения:

0: high

1: core

2: default

3: low

$callback_args

Тип: array

Обязательный: Нет

По умолчанию: array()

Описание: Массив аргументов, передаваемых в функцию обратного вызова

Возможные значения:

Возвращаемое значение

Тип: void

Описание: Функция ничего не возвращает.

Возможные значения:

• Нет возвращаемого значения

Примеры использования

Добавление простого метабокса на экран редактирования поста

				
					add_meta_box('my_custom_meta_box', 'Мой метабокс', 'my_custom_meta_box_callback', 'post');
				
			

Добавление метабокса на экран редактирования страницы в боковой панели с высоким приоритетом

				
					add_meta_box('my_custom_meta_box', 'Мой метабокс', 'my_custom_meta_box_callback', 'page', 'side', 'high');
				
			

Проверка существования функции перед добавлением метабокса

				
					if (!function_exists('my_custom_meta_box_callback')) { return; }
add_meta_box('my_custom_meta_box', 'Мой метабокс', 'my_custom_meta_box_callback', 'post');
				
			

Добавление метабокса для настроек плагина на экран редактирования поста

				
					function my_plugin_add_meta_box() {
    add_meta_box('my_plugin_meta', 'Настройки плагина', 'my_plugin_meta_callback', 'post');
}
add_action('add_meta_boxes', 'my_plugin_add_meta_box');
				
			

Безопасность

Валидация входных данных: Проверяйте входные данные в функции обратного вызова

Санитизация: Санитизируйте данные перед сохранением или выводом

Рекомендации: Используйте функции esc_html() и esc_attr() для вывода данных

— Связанные функции

Удаляет метабокс с экрана

Получает метаданные поста

— Примечания

– Ограничения

Необходимо учитывать, что метабоксы не поддерживаются для всех типов экранов

– Частые проблемы

  • Метабокс не отображается, если неправильно задан экран
  • Конфликты с другими плагинами, которые добавляют метабоксы

Оставить комментарий

Нужна помощь с WordPress WooCommerce плагинами темой оптимизацией ?

Упрощаем сложное, создаем впечатляющее!
100% без риска
Нет обязательств по найму
Бесплатная оценка
5900 ₽
Услуги и врачи
Шаблон медицинского сайта включает онлайн-запись к врачу, каталог мед услуг, список врачей с опытом и рейтингом. Раздел вопрос/ответ обеспечивает оперативное взаимодействие с клиентами.

Поможем вывести Ваш бизнес на новый уровень!

Проснувшись однажды утром после беспокойного сна, Грегор Замза обнаружил

Добро пожаловать!

Авторизуйтесь, чтобы продолжить

или

Забыли пароль? Восстановить

* Если аккунта у Вас еще нет, то он будет создан автоматически

Давайте составим техническое задание!
100% без риска
Нет обязательств по найму
Бесплатная оценка стоимости
Здравствуйте! Я асистент на основе искусственного интеллекта. Вы можете общаться со мной, как с человеком — задавайте вопросы, описывайте свои идеи и требования.

С удовольствием помогу вам составить техническое задание для вашего WordPress проекта. Если Вам нужна техническая поддержка по купленному у нас плагину или шаблону, то создайте тикет в личном кабинете.

Выберите подходящий вариант или опишите свою задачу в свободной форме, и я помогу вам составить четкий план действий, для оценки стоимости нашими разработчиками! 😊