web-dev-qa-db-fra.com

Woocommerce interroge tous les produits et catégories

J'ai besoin de générer un fichier XML à partir de tous mes produits. Ma requête actuelle affiche tous les noms de produits, mais comment accéder aux catégories pour chaque produit? Tous les produits ont des catégories et des sous-catégories. Ma requête actuelle:

$args = array( 
                'post_type' => 'product', 
                'orderby' => 'post_excerpt', 
                'order' => 'ASC',
                //'product_cat' => 'My Product Category',
                'post_status' => 'publish'
            );
            $loop = new WP_Query( $args );

            while ( $loop->have_posts() ) {
                $loop->the_post();
                echo '' . get_the_title() . '<br /><br />';
            }
1
slc

Vous pouvez utiliser wp_get_post_terms ()

$categories = wp_get_post_terms(get_the_ID(), 'product_cat', array("fields" => "names"));
print_r($categories);

Les noms des catégories de produits sont renvoyés sous forme de tableau afin que vous puissiez les parcourir en boucle avec un foreach ou les transformer en chaîne, par exemple:

$categories_list = implode(",", $categories);

Si vous avez besoin de plus que des noms, vous pouvez obtenir un tableau de retour des propriétés du terme en modifiant les champs en "all".

$categories = wp_get_post_terms(get_the_ID(), 'product_cat', array("fields" => "all"));

http://codex.wordpress.org/Function_Reference/wp_get_post_terms

1
Steven Jones