我的网站上有问题。
以下代码显示帖子的ID,其中包含用户编写的country
分类法的术语。
例如,如果我搜索“france”,或者我写http://www.mywebsite.com/pagesearch/?country=france
,则会显示包含术语france
的id 430,522和650。
我想要的是,当显示结果时,结果页面上会显示一些复选框下拉菜单,以便能够再次过滤结果。我有分类city
和activity
。
我想,如果用户检查城市分类中的“巴黎”和“马赛”以及活动分类中的“餐馆”,它会显示过滤结果,并在这些条款上带有OR条件。
目前我有这段代码:( $ output是城市条款的下拉列表)。 我不知道如何获取选中的复选框,并使用这些术语再次过滤结果。 我尝试使用
非常感谢你的帮助,
海洋
if ((isset($_GET['country'])) && (!empty($_GET['country']))){
$country = sanitize_text_field($_GET['country']);
$search_posts_id = array();
$search_args = array(
'fields' => array('ids', 'post_type'),
'post_type' => 'my_custom_posttype',
'tax_query' => array(
array (
'taxonomy' => 'country',
'field' => 'slug',
'terms' => $country,
),
),
);
$search_query = new WP_Query($search_args);
if ( $search_query->have_posts() ) :
$search_posts_id = array_unique(wp_list_pluck( $search_query->posts, 'ID' ));
$termobjs = wp_get_object_terms( $search_posts_id, 'city', array('orderby' => 'name', 'order' => 'ASC', 'fields' => 'all'));
$output ='<dl class="dropdownfilter"><dt><a href="#"><span class="hida">Marque</span><p class="multiSel"></p></a></dt><dd><div class="mutliSelect"><ul>';
foreach($termobjs as $term){
$output .= '<li><input type="checkbox" id="'.$term->slug.'" name="'.$term->taxonomy.'" value="'.$term->slug.'"> '.$term->name.'</li>';
}
$output .='</ul></div></dd><button class="buttonfilter">Filtrer</button></dl>';
endif;
wp_reset_postdata();
echo $output;
echo $search_posts_id;
}