wp_set_object_terms()

19 февраля, 2025
Установка терминов таксономии для объекта WordPress с помощью функции wp_set_object_terms(): параметры, примеры, безопасность
Быстрая навигация по записи

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

Функция wp_set_object_terms() позволяет установить термины (категории, метки и т.д.) для заданного объекта (поста, страницы, пользовательского типа записи). Функция может использоваться для создания и обновления связей между объектами и терминами таксономии.

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

Параметры

$object_id

Тип: int

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

Описание: ID объекта, которому устанавливаются термины

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

$terms

Тип: mixed

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

Описание: Массив или строка терминов, которые необходимо установить

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

$taxonomy

Тип: string

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

Описание: Имя таксономии, к которой относятся термины

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

0: category

1: post_tag

2: custom_taxonomy

$append

Тип: bool

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

Описание: Добавить термины к существующим (true) или заменить их (false)

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

0: 1

1:

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

Тип: mixed

Описание: Возвращает массив установленных терминов или WP_Error в случае ошибки

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

• Массив установленных терминов при успешном выполнении

• WP_Error в случае ошибки

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

Базовый пример установки терминов для поста с ID 42

				
					$result = wp_set_object_terms(42, ['term1', 'term2'], 'category');
// Проверка результата
if (!is_wp_error($result)) {
    echo 'Термины успешно установлены';
} else {
    echo 'Ошибка: ' . $result->get_error_message();
}
				
			

Термины терминов ‘term1’ и ‘term2’ будут установлены для категории

Добавление нового термина ‘term3’ к существующим терминам поста

				
					$result = wp_set_object_terms(42, 'term3', 'category', true);
// Проверка результата
if (!is_wp_error($result)) {
    echo 'Термин добавлен';
}
				
			

append=true позволяет сохранить существующие термины

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

Валидация входных данных: Функция проверяет корректность ID объекта и существование таксономии

Санитизация: Термины автоматически очищаются через sanitize_term()

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

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

Получает термины, привязанные к объекту

Удаляет термины из объекта

— Хуки

Фильтрует термины перед их установкой

— Примечания

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

Не работает для объектов, у которых нет возможности привязки к терминам

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

  • Ошибка при неверном ID объекта
  • Ошибка при неверной таксономии

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

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

Упрощаем сложное, создаем впечатляющее!
100% без риска
Нет обязательств по найму
Бесплатная оценка
1900 ₽
6 разных демо
Cоздать сайт для блога на WordPress. Идеально подходит для сайта новостей блогов и журналов, обеспечивая комфортное и приятное взаимодействие , полностью на русском языке

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

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

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

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

или

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

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

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

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

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