web-dev-qa-db-fra.com

Get tous les produits qui ont encore deux catégories de produits

J'ai besoin de tous les produits qui ont les deux catégories. J'utilise une requête ci-dessous:

$args = array(
                        'post_type' => array('product', 'product_variation'),

                        'tax_query' => array(
                            array(
                                'taxonomy' => 'product_cat',
                                'field' => 'slug',
                                'terms'    => array( 'shop', 'cat1' ),
                                'operator' => 'AND',
                            )
                        )
                    );

Cela fonctionne correctement si la catégorie cat1 n'a pas de sous-catégorie comme cat1-1, cat1-2 etc. Mais quand j'ai créé la sous-catégorie dans le back-end de cat1, le résultat sera nul.

La requête est la même mais aucun résultat si cat1 a une sous-catégorie.

Merci

1
meenakshi

Définissez include_children sur false dans tax_query.

$args = array(
'post_type' => array( 'product', 'product_variation' ),

'tax_query' => array(
    array(
        'taxonomy'         => 'product_cat',
        'field'            => 'slug',
        'terms'            => array( 'shop', 'cat1' ),
        'include_children' => false,
        'operator'         => 'AND',
    )
)

)

Voir https://codex.wordpress.org/Class_Reference/WP_Query#Taxonomy_Parameters

1
Markus Drubba