NB : Faire une sauvegarde de votre thème, de votre fichier et/ou votre base de données avant d’ajouter ces fonctions tutoriels.
Publié le : 08 novembre 2016 - Modifié le : 18 janvier 2022
Temps de lecture : 2 minutes, 12 seconds - 239 mots
Partager la publication "Afficher le nombre de Produits Woocommerce"
Afficher le nombre de Produits Woocommerce : dans ce tutoriel, nous allons effectuer une requête qui permet de les afficher.
D’abord abordons l’explication rapide de found_posts qui se trouve dans la requête ci-dessous. Il permet de filtrer le nombre trouvé et correspondant aux Posts ou Post Types dans les arguments.
Pour le reste, ça reste une requête basique même si c’est pour Woocommerce. Le poste Woocommerce des produits s’appelle product.
Afficher le nombre de Produits Woocommerce
function via_classement_woocommerce_products_count_total() { $args = array( 'post_type' => 'product', 'post_status' => 'publish', 'posts_per_page' => -1 ); $products = new WP_Query( $args ); echo '<span class="numberCircle">'; echo $products->found_posts; echo '</span>'; }
Nous allons maintenant découvrir une façon par exemple d’éviter de multiplier les fonctions. On s’explique … Vous souhaitez la même fonction mais vous souhaitez afficher les nombres de produits par statut … Voilà l’astuce :
Voici les différents status (post_status) des posts ou Post Types :
– ‘publish’ == Publié
– ‘Future’ == Futur publication
– ‘Draft’ == Brouillon
– ‘Pending’ == En attente de validation
– ‘Private’ == Privé
– ‘Trash’ == Supprimé en Corbeille
Maintenant recomposant notre fonction précédente en imaginant que nous allons l’utiliser pour afficher différents nombres de Produits suivant leurs statuts.
Voici votre fonction correcte a déposer dans votre functions.php. Remarquer que nous avons stocké une variable $statut qui va nous permettre de récupérer la valeur que nous souhaitons lui attribuer. Cette valeur est ensuite affichée dans la requête comme ceci (‘post_status’ => $statut).
function via_classement_woocommerce_products_count_total($statut) { $args = array( 'post_type' => 'product', 'post_status' => $statut, 'posts_per_page' => -1 ); $products = new WP_Query( $args ); echo '<span class="numberCircle">'; echo $products->found_posts; echo '</span>'; }
Maintenant dans un de vos templates WordPress, vous affichez votre fonction de la manière suivante :
<?php echo via_classement_woocommerce_products_count_total($statut = 'publish'); ?>