我正在尝试优化wordpress模板中的搜索。基本上,我想使用multiselect with。我使用数组存储所选选项,如下所示:location[]=term1&;位置[]=term2等。这是搜索代码的外观:
$form_location = $_GET[\'location\'];
if ($form_location != "")
$form_location = array(
\'taxonomy\' => \'location\',
\'field\' => \'slug\',
\'terms\' => $form_location
);
// Final Query
$items_args = array(
\'post_type\' => \'listings\',
\'meta_query\' => array(
$form_price,
$form_area_range,
$rentbuy
),
\'tax_query\' => array(
\'relation\' => \'AND\',
$form_location,
$form_property_type,
$form_rating,
$form_bed,
$form_bath
)
);
?>
<?php $items_args = new WP_Query($items_args); if ( $items_args->have_posts() ) :
。。。
我修改了$location来处理数组。我没有完全正确地完成循环,因为我不确定如何处理tax\\u查询。这就是我所做的。我添加了foreach:
foreach ($form_location as $loc2) {
$form_location = array(
\'taxonomy\' => \'location\',
\'field\' => \'slug\',
\'terms\' => $loc2
); }
这是我缓存的输出:
WP_Query Object ( [query_vars] => Array ( [post_type] => listings [meta_query] => Array ( [0] => [1] => [2] => Array ( [key] => rentbuy [value] => rent ) ) [tax_query] => Array ( [relation] => AND [0] => Array ( [taxonomy] => location [field] => slug [terms] => term1 ) [1] => [2] => [3] => [4] => )...
问题是,我希望将位置分类法用于查询,使用或条件查询它从数组中获得的每个项,以及使用和查询tax\\u中的其他项。这有可能吗?怎么可能?谷歌今晚并不友好。