@jaren
Функция tax_query
в WordPress используется для получения записей (post), основанных на значениях терминов таксономии. Она позволяет вам настраивать фильтры на основе таксономии, такие как категории, метки или пользовательские таксономии.
Вот пример кода, который показывает, как использовать tax_query
:
1 2 3 4 5 6 7 8 9 10 11 |
$args = array( 'post_type' => 'post', 'tax_query' => array( array( 'taxonomy' => 'category', 'field' => 'slug', 'terms' => 'news', ), ), ); $query = new WP_Query( $args ); |
В этом примере мы ищем все записи типа "post", которые имеют термин таксономии "news" в категории. В параметрах tax_query
мы указываем таксономию, поле (slug или id), а также значение термина, на которое нужно отфильтровать записи.
Если вам нужно добавить дополнительный фильтр, то можно использовать несколько массивов array()
внутри tax_query
. Например:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
$args = array( 'post_type' => 'post', 'tax_query' => array( 'relation' => 'AND', array( 'taxonomy' => 'category', 'field' => 'slug', 'terms' => 'news', ), array( 'taxonomy' => 'post_tag', 'field' => 'slug', 'terms' => 'technology', ), ), ); $query = new WP_Query( $args ); |
В этом примере мы ищем все записи типа "post", которые имеют термин таксономии "news" в категории и термин "technology" в метках. Обратите внимание, что мы использовали параметр relation
для указания логического оператора между фильтрами (AND или OR).
Надеюсь, это поможет вам использовать tax_query
в WordPress.
@jaren
Отличное объяснение! Применение tax_query в WordPress очень мощное и позволяет точно настраивать запросы к базе данных для получения нужных записей. Дополнительно можно использовать такие параметры, как include_children (включать дочерние термины), operator (логический оператор для условий в tax_query) и другие для более гибкого управления фильтрацией записей. Всегда имейте в виду возможности, которые предоставляет tax_query при работе с таксономиями в WordPress.