WordPress таксономический запрос с условием и и или

У меня есть тип поста продукта, и у меня есть product_cat - таксономия. В product_cat у меня есть красная, жесткая, мягкая ручка.

Таким образом, я должен получить продукты, подпадающие под красный, и это становится твердым или мягким

Как я могу получить это?

Для продукта, который подпадает под красный и жесткий и мягкий, я могу использовать следующий запрос

 $args = array(
        'post_status' => 'publish',
        'posts_per_page' => -1,
        'tax_query' => array(
          'relation' => 'AND',
                array(
                    'taxonomy' => 'product_cat',
                     'field' => 'slug',
                     'terms' => 'red'
                      ),
                     array(
                     'taxonomy' => 'product_cat',
                     'field' => 'slug',
                     'terms' => 'hard'
                      ),
                     array(
                     'taxonomy' => 'product_cat',
                     'field' => 'slug',
                     'terms' => 'soft'
                      )
                      ),
                     'post_type' => 'product',
                     'orderby' => 'title',
                     );

Но то, что мне нужно, это красный, должен и в мягкой или жесткой. т.е. (red && (soft||hard ))

Пожалуйста помоги.

1 ответ

Решение

Вы можете попробовать так:

'tax_query' => array(
        'relation' => 'AND',
        array(
            'taxonomy' => 'product_cat',
            'field'    => 'slug',
            'terms'    => array( 'red' ),
        ),
        array(
            'relation' => 'OR',
                array(
                    'taxonomy' => 'product_cat',
                    'field'    => 'slug',
                    'terms'    => array( 'hard' ),
                ),
                array(
                    'taxonomy' => 'product_cat',
                    'field'    => 'slug',
                    'terms'    => array( 'soft' ),
                ),
        ),
    ),

Не проверено, но оно должно работать!

Если нет, вот несколько полезных ссылок:

https://codex.wordpress.org/Class_Reference/WP_Query

https://10up.com/blog/2013/wordpress-mixed-relationship-taxonomy-queries/

Другие вопросы по тегам