Для того что бы в ВордПресс получить определенный тип записей отфильтрованных по кастомной таксономии (или существующей), воспользуйтесь следущим снипеттом:
$Posts = get_posts(array( 'post_type' => 'my-post-type', 'order' => 'ASC', 'tax_query' => array( array( 'taxonomy' => 'my-taxonomy', 'field' => 'slug', 'terms' => 'event' ) ), 'meta_query' => array( 'AND', array( 'type' => 'NUMERIC', 'key' => 'event_date', 'compare' => '<', 'value' => time() ), array( 'type' => 'NUMERIC', 'key' => 'is_archive', 'compare' => '==', 'value' => 0 ) ) ));
Что мы имеем. Первое:
'post_type' => 'my-post-type', 'order' => 'ASC',
ищем в БД записи типа "my-post-type".
Второе:
'tax_query' => array( array( 'taxonomy' => 'my-taxonomy', 'field' => 'slug', 'terms' => 'event' ) ),
в тот же запрос, добавляем фильтрацию по таксономии типа "my-taxonomy", slug которой равен "event".
Третье:
'meta_query' => array( 'AND', array( 'type' => 'NUMERIC', 'key' => 'event_date', 'compare' => '<', 'value' => time() ), array( 'type' => 'NUMERIC', 'key' => 'is_archive', 'compare' => '==', 'value' => 0 ) )
Добавляем в фильтр ограничение по мета полям, где дата события "event_date" больше текущей даты, и где данная запись не находится в архиве:
'is_archive == 0'