wp_get_object_terms()

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

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

Функция wp_get_object_terms() используется для получения терминов, связанных с конкретным объектом (например, записью или товаром). Она позволяет фильтровать и сортировать термины, а также поддерживает различные таксономии. Результат возвращается в виде массива объектов WP_Term, что обеспечивает удобный доступ к свойствам терминов, таким как название и ID.

Эта функция полезна для получения меток, категорий и других терминов, связанных с объектами в WordPress

Параметры

$object_ids

Тип: int|array

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

По умолчанию: нет

Описание: ID объекта или массив ID объектов, для которых нужно получить термины

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

$taxonomy

Тип: string|array

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

По умолчанию: нет

Описание: Таксономия или массив таксономий, для которых нужно получить термины

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

$args

Тип: array

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

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

Описание: Массив аргументов для фильтрации и сортировки терминов

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

orderby: name, term_id, slug, count

order: ASC, DESC

hide_empty: 1,

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

Тип: array|WP_Error

Описание: Массив объектов WP_Term, представляющих термины, или WP_Error в случае ошибки

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

• Массив объектов WP_Term при успешном выполнении

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

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

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

				
					$terms = wp_get_object_terms(1, 'category');
foreach($terms as $term) {
    echo $term->name.', ';
}
				
			

Например, ‘Новости’, ‘Статьи’,

Получение терминов, отсортированных по количеству записей

				
					$args = array(
    'orderby' => 'count',
    'order' => 'DESC'
);
$terms = wp_get_object_terms(1, 'category', $args);
				
			

Термины будут отсортированы от большего к меньшему количеству записей

Проверка на ошибки при получении терминов

				
					$terms = wp_get_object_terms(1, 'invalid_taxonomy');
if (is_wp_error($terms)) {
    echo 'Ошибка: ' . $terms->get_error_message();
}
				
			

Выводит сообщение об ошибке, если таксономия неверная

Получение терминов для нескольких объектов

				
					$terms = wp_get_object_terms(array(1, 2), 'post_tag');
foreach($terms as $term) {
    echo $term->name . ', ';
}
				
			

Можно передавать массив ID объектов

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

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

Санитизация: Параметры автоматически очищаются WordPress

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

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

Получает термины для текущего поста

Получает термины по заданным параметрам

— Хуки

Фильтрует результаты перед возвращением терминов

Фильтрует аргументы перед выполнением запроса терминов

— Примечания

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

Функция может возвращать пустой массив, если термины не найдены

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

  • Неверные ID объектов или таксономий приведут к ошибкам
  • Проблемы с кэшированием при изменении таксономий

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

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

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

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

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

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

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

или

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

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

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

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

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