Создание метабоксов в административной панели 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% без риска
Нет обязательств по найму
Бесплатная оценка

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

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

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

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

или

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

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

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

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

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