Comment afficher les produits en rupture de stock dans une page dédiée (Shortcode)

Nous allons voir ensemble comment générer un shortcode WordPress qui va vous permettre d'afficher la liste des produits hors stocks de votre boutique. Techniquement, ce sont ceux dont la quantité est strictement inférieure à 1.

De cette manière, vous pourrez ensuite placer ces produits dans une page dédiée ou dans l'emplacement de votre choix.

Pourquoi vouloir mettre en avant vos produits en rupture de stocks ? Si vous lisez cet article, vous avez probablement une raison. Citons-en quelques-unes. Dans certains cas, cela est intéressant pour informer vos clients des articles qui seront prochainement disponibles à la vente. Ou bien vous pourriez donner de la crédibilité à votre site WooCommerce en montrant les produits que vous avez vendus.

La solution se fait en deux étapes. D'abord, vous allez récupérer (copier) ce code PHP qui va générer le shortcode WooCommerce. Après cela, nous le placerons dans une nouvelle page.

1) Le code PHP du shortcode WooCommerce des produits hors stock

Ce code source va simplement sélectionner les produits dont le stock est égal ou inférieur à 0. En effet, il est possible d'avoir des stocks négatifs sous WooCommerce. La liste des articles générée est ensuite placée dans un shortcode.

add_shortcode( 'out_of_stock_products', 'wootimeo_out_of_stock_products_shortcode' );
  
function wootimeo_out_of_stock_products_shortcode() {
	global $product, $woocommerce, $woocommerce_loop;
	$columns = 4;
	 
	$args = array(
		'post_type'             => 'product',
		'post_status'           => 'publish',
		'meta_query'            => array(
			array(
				'key'           => '_stock',
				'value'         => 1,
				'compare'       => '<'
			)
		)
	);
	$loop = new WP_Query($args);
	  
	ob_start();
	  
	woocommerce_product_loop_start();
	  
	while ( $loop->have_posts() ) : $loop->the_post();
	wc_get_template_part( 'content', 'product' );
	endwhile; 
	  
	woocommerce_product_loop_end();
	  
	woocommerce_reset_loop();
	wp_reset_postdata();
	  
	return '<div class="woocommerce columns-' . $columns . '">' . ob_get_clean() . '</div>';
}

2) Afficher les produits en rupture de stock dans une page

Maintenant il vous suffit simplement d'ajouter une page et d'y placer le nouveau shortcode : [out_of_stock_products]. Et voilà le résultat :

 

Il n'y a pas encore de commentaires.

Une chose à dire sur cet article ?

Dites-le ici :
Nom
Email
Site internet