WP_Term_Query()

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

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

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

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

Параметры

$args

Тип: array

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

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

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

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

taxonomy: название таксономии (например, ‘category’)

hide_empty: 1,

orderby: name, count, term_id

order: ASC, DESC

include: массив ID терминов для включения

exclude: массив ID терминов для исключения

parent: ID родительского термина

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

Тип: array

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

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

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

• Пустой массив если термины не найдены

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

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

Базовый пример получения всех терминов категории

				
					$args = array(
    'taxonomy' => 'category'
);
$query = new WP_Term_Query($args);
foreach($query->terms as $term) {
    echo $term->name . ', ';
}
				
			

Выводит названия всех категорий

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

				
					$args = array(
    'taxonomy' => 'post_tag',
    'orderby' => 'count',
    'order' => 'DESC'
);
$query = new WP_Term_Query($args);
				
			

Наиболее популярные метки будут показаны первыми

Проверка на наличие ошибок в запросе

				
					$args = array(
    'taxonomy' => 'invalid_taxonomy'
);
$query = new WP_Term_Query($args);
if (is_wp_error($query)) {
    echo 'Ошибка: ' . $query->get_error_message();
}
				
			

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

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

				
					$args = array(
    'taxonomy' => 'category',
    'hide_empty' => true
);
$query = new WP_Term_Query($args);
if (!empty($query->terms)) {
    foreach($query->terms as $term) {
        // Обработка термина
    }
}
				
			

Отображает только те категории, которые имеют записи

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

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

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

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

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

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

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

— Хуки

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

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

— Примечания

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

Может не возвращать термины, если они скрыты или не соответствуют критериям

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

  • Пустой результат при неправильных параметрах
  • Проблемы с иерархией при неверных настройках parent

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

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

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

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

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

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

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

или

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

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

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

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

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