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% без риска
Нет обязательств по найму
Бесплатная оценка
5900 ₽
Автомобильный каталог
Шаблон авто сайта на русском языке, преображающий онлайн-сервисы для автодилеров и профессионалов автобизнеса. Стильный и интуитивно понятный дизайн обеспечивает быстрый поиск автомобиля мечты

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

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

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

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

или

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

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

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

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

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