# WP_Term_Query
Класс для выполнения запросов к терминам в WordPress.
## Что такое WP_Term_Query?
WP_Term_Query — это инструмент, который помогает разработчикам получать и обрабатывать термины (категории, метки и другие классификации) в WordPress. Этот класс используется в функциях, таких как get_terms() и WP_Tax_Query().
### Используемые хуки
Класс предоставляет несколько хуков для изменения поведения запросов к терминам:
- get_terms_defaults
- parse_term_query
- pre_get_terms
- get_terms_args
- list_terms_exclusions
- get_terms_fields
- terms_clauses
- terms_pre_query
- get_terms_orderby
## Как использовать WP_Term_Query
Вы можете создать новый объект класса WP_Term_Query, передавая в него параметры запроса:
```php
$term_query = new WP_Term_Query($args);
После этого можно вызывать методы класса для получения терминов.
Основные методы
-
__construct($query = '')
Конструктор, который инициализирует объект, основываясь на ��ереданных параметрах запроса.
-
get_terms()
Метод для получения терминов на основе параметров запроса.
-
parse_query($query = '')
Разбирает параметры запроса и устанавливает значения по умолчанию.
-
query($query)
Устанавливает параметры и выполняет запрос на получение терминов.
-
format_terms($term_objects, $_fields)
Форматирует результаты запроса в зависимости от запрашиваемых полей.
Пример использования
Вот пример, как можно использовать WP_Term_Query для получения терминов:
$args = array(
'taxonomy' => array('post_tag', 'my_tax'), // Имя таксономии
'orderby' => 'id', // Сортировка по ID
'order' => 'ASC', // Порядок сортировки
'hide_empty' => true, // Скрыть пустые термины
);
$term_query = new WP_Term_Query($args);
// Получаем результаты
foreach ($term_query->terms as $term) {
print_r($term);
}
Важные параметры запроса
Вот некоторые параметры, которые вы можете использовать в $args:
taxonomy: Имя или массив имен таксономий.orderby: Поле для сортировки терминов. Например, 'name', 'id'.order: Порядок сортировки ('ASC' или 'DESC').hide_empty: Скрыть термины без связанных объектов (постов).include: Массив идентификаторов терминов, которые нужно включить в результат.exclude: Массив идентификаторов терминов, которые нужно исключить.number: Максимальное количество терминов для возвращения.fields: Определяет, какие поля возвращать, например, 'all', 'ids', 'names'.
Заключение
WP_Term_Query — мощный класс, который облегчает извлечение терминов из базы данных WordPress. Используя различные методы и параметры, вы можете гибко настраивать свои запросы для получения нужных данных.