使用分类法的复选框过滤结果搜索页面(wordpress)

时间:2017-06-08 09:49:51

标签: php wordpress

我的网站上有问题。

以下代码显示帖子的ID,其中包含用户编写的country分类法的术语。

例如,如果我搜索“france”,或者我写http://www.mywebsite.com/pagesearch/?country=france,则会显示包含术语france的id 430,522和650。

我想要的是,当显示结果时,结果页面上会显示一些复选框下拉菜单,以便能够再次过滤结果。我有分类cityactivity。 我想,如果用户检查城市分类中的“巴黎”和“马赛”以及活动分类中的“餐馆”,它会显示过滤结果,并在这些条款上带有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;
}

0 个答案:

没有答案