Afficher un seul prix sur les variations produit

Sur une page de catégorie de produits WooCommerce, vos produits sont affichés sous forme de vignettes. Lorsqu’il s’agit d’un produit variable, Woocommerce affiche le plus petit et le plus grand prix de vos variation et le bouton invite à “Voir le produit” afin de choisir une des options proposées. Il est possible d’afficher seulement le prix le plus bas sur la vignette produit en insérant cette fonction dans le fichier functions.php de votre thème enfant.

				
					add_filter('woocommerce_variable_sale_price_html', 'display_lowest_variation_price', 10, 2);
add_filter('woocommerce_variable_price_html', 'display_lowest_variation_price', 10, 2);

function display_lowest_variation_price($price, $product) {
    // Récupérer toutes les variations du produit
    $available_variations = $product->get_available_variations();
    
    if ($available_variations) {
        $lowest_price = PHP_INT_MAX;

        // Boucler à travers chaque variation pour trouver le prix le plus bas
        foreach ($available_variations as $variation) {
            $variation_obj = new WC_Product_Variation($variation['variation_id']);
            $variation_price = $variation_obj->get_price();

            if ($variation_price < $lowest_price) {
                $lowest_price = $variation_price;
            }
        }

        // Afficher le prix le plus bas
        $price = wc_price($lowest_price);
    }

    return $price;
}

				
			

Laisser un commentaire