Описание функции add_metadata()
Функция add_metadata() добавляет метаданные к объектам WordPress, таким как посты, пользователи, термины и комментарии. Она позволяет сохранять дополнительные данные, связанные с объектами, что может быть полезно для расширения функциональности и хранения пользовательской информации.
Функция поддерживает уникальность записей и может использоваться для различных типов объектов.
Параметры
$meta_type
Тип: string
Обязательный: Да
Описание: Тип объекта, к которому добавляется метаданные (например, ‘post’, ‘user’, ‘term’, ‘comment’)
Возможные значения:
0: post
1: user
2: term
3: comment
$meta_id
Тип: int
Обязательный: Да
Описание: ID объекта, к которому добавляются метаданные
$meta_key
Тип: string
Обязательный: Да
Описание: Ключ метаданных, который будет использоваться для хранения данных
$meta_value
Тип: mixed
Обязательный: Да
Описание: Значение метаданных, которое будет храниться под указанным ключом
$unique
Тип: bool
Обязательный: Нет
Описание: Если true, метаданные с таким ключом будут уникальными для данного объекта
Возможные значения:
0: 1
1:
Возвращаемое значение
Тип: int|false
Описание: ID добавленного метаданных или false при ошибке
Возможные значения:
• ID добавленного метаданных при успешном выполнении
• false если произошла ошибка
Примеры использования
Базовый пример добавления метаданных к посту
$post_id = 1;
$meta_id = add_metadata('post', $post_id, 'custom_field', 'some value');
// $meta_id будет содержать ID добавленного метаданных или false
Метаданные будут доступны через get_post_meta()
Добавление уникальной роли пользователя
$user_id = 1;
$meta_id = add_metadata('user', $user_id, 'user_role', 'editor', true);
Если метаданные с ключом ‘user_role’ уже существуют, они не будут добавлены
Проверка успешности добавления метаданных
$meta_id = add_metadata('post', 999, 'custom_field', 'value');
if ($meta_id === false) {
// Обработка ошибки
break;
}
ID 999 может не существовать
Безопасность
Валидация входных данных: Функция проверяет типы входных параметров
Санитизация: Метаданные автоматически очищаются WordPress
Рекомендации: При выводе данных используйте соответствующие функции для экранирования
— Связанные функции
Получает метаданные по ключу
Удаляет метаданные по ключу
— Примечания
– Ограничения
Функция может не работать с нестандартными типами объектов без дополнительной обработки
– Частые проблемы
- Ошибка при добавлении метаданных к несуществующему объекту
- Необходимо следить за уникальностью ключей при использовании параметра unique