在wordpress中带有复选框的tax_query

时间:2019-05-07 12:00:02

标签: wordpress

我正在使用Wordpress创建车辆搜索。 我创建了一个车辆发布类型,其中还包含用于搜索词(颜色,价格,型号等)的分类法。

在前端,我列出了所有父母的复选框,因此它看起来像以下内容:

制作 - 宝马 -奥迪

颜色 -红色 -白色

以上内容可在“车辆属性”分类法中找到,其分类为make,颜色为父级。

我需要这样做,以便最终用户可以单击复选框并选择他们需要的属性。

我创建的代码确实有效,但前提是它没有使用相同的父代。例如,它将返回带有正确项目的Red和BMW,但是如果我也选择BMW AUDI和Red,则它将仅返回Audi和red项目。

foreach ($_POST as $key => $value) {

    $valueArray[] = array(
         'taxonomy' => 'Vehicleattributes',
         'field' => 'slug',
         'terms' => $value,
         'operator' => 'IN'
    );

}


$args = array('post_type' => 'mo_vehicle',
      'tax_query' => array(
          'relation' => 'AND',

            /*  array(
              'taxonomy' => 'Vehicleattributes',
              'field' => 'term_id',
              'terms' => $postModel ? $postModel : $postMake,
              'operator' => 'IN'
            ), */

           /*
          array(
              'taxonomy' => 'Vehicleattributes',
              'field' => 'slug',
              'terms' => $valueArray,
              'operator' => 'IN',
              'include_children' => false
          ),
          */
        $valueArray

      ),
      'meta_query' => array(
         'relation' => 'AND',
            array('key' => '_mo_price',
                  'value' => $postminPrice,
                  'compare' => '>='
            ),
            array('key' => '_mo_price',
                  'value' => $postmaxPrice,
                  'compare' => '<='
            )
      )
  );

0 个答案:

没有答案