Почему мой запрос WP не работает, когда термины налогового запроса представляют собой массив?
У меня проблема с WP_Query для сайта, который я создаю, и это ставит меня в тупик.
Это работает, как и ожидалось:
$package_args = array(
'post_type' => 'vamos-cpt-packages',
'tax_query' => array(
'taxonomy' => 'vamos-holiday-types',
'field' => 'slug',
'terms' => 'activity-holidays'
)
);
$packages = new WP_Query($package_args);
var_dump($packages);
Но когда термины представляют собой массив:
$package_args = array(
'post_type' => 'vamos-cpt-packages',
'tax_query' => array(
'taxonomy' => 'vamos-holiday-types',
'field' => 'slug',
'terms' => array('activity-holidays')
)
);
$packages = new WP_Query($package_args);
var_dump($packages);
Это не так! Мне не возвращают никаких сообщений. Кто-нибудь может это объяснить?
Приветствия Кевин
3
1 answers
Когда вы делаете tax_query
или meta_query
в WP_Query
, вы всегда должны использовать вложенный
array( array() );
Просто посмотрите следующий пример для объяснения и обратите внимание на аргумент relation
.
$packages = new WP_Query( array(
'post_type' => 'vamos-cpt-packages',
'tax_query' => array(
'relation' => 'AND',
array(
'taxonomy' => 'vamos-holiday-types',
'field' => 'slug',
'terms' => array( 'activity-holidays' )
),
array(
'taxonomy' => 'vamos-holiday-types',
'field' => 'id',
'terms' => array( 103, 115, 206 ),
'operator' => 'NOT IN'
)
)
) );
9
Author: kaiser, 2017-02-10 13:39:44