Afficher le poids total des produits dans le panier et commande

Souvent, nous rencontrons des soucis avec les règles d’expéditions de WooCommerce et notamment si la règle d’expédition n’inclus pas une règle de poids assez grande.

Par exemple nous avions configuré des règles allant jusqu’à 10KG, hors un client a voulu acheter pour plus de 10KG.

Ce bout de code va vous permettre de faire afficher dans la page panier et de validation de commande le poids total des produits se trouvant dans le panier.
Ainsi si c’est un soucis de poids au niveau de la règle d’expédition vous serez en mesure de régler le soucis en deux secondes !

Il vous suffit d’ajouter ce snippet au functions.php de votre theme enfant :

				
					// Afficher le poids total des articles dans le panier WooCommerce en kilogrammes
add_action( 'woocommerce_cart_totals_before_order_total', 'display_cart_total_weight_kg' );
add_action( 'woocommerce_review_order_before_order_total', 'display_cart_total_weight_kg' );

function display_cart_total_weight_kg() {
    // Calculer le poids total en kilogrammes
    $total_weight = 0;

    foreach ( WC()->cart->get_cart() as $cart_item ) {
        $product = $cart_item['data'];
        $quantity = $cart_item['quantity'];
        $weight = $product->get_weight();
        
        if ( $weight ) {
            $total_weight += ( $weight * $quantity );
        }
    }

    // Convertir en kilogrammes si nécessaire
    $weight_unit = get_option( 'woocommerce_weight_unit' );
    if ( $weight_unit !== 'kg' ) {
        $total_weight = wc_get_weight( $total_weight, 'kg' );
    }

    if ( $total_weight > 0 ) {
        echo '<tr class="cart-total-weight"><th>' . __( 'Total KG', 'woocommerce' ) . '</th><td data-title="' . __( 'Total KG', 'woocommerce' ) . '">' . number_format( $total_weight, 2 ) . ' kg</td></tr>';
    }
}

				
			
Envie de laisser un commentaire ?

2 réponses

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Tu veux voir d'autres bouts de code ?

Bouton retour en haut pour Elementor

Bouton « Retour en haut » avec remplissage progressif en fonction du défilement. Utilise automatiquement la couleur principale d'Elementor.

Stock Status Widget pour Elementor

Widget Elementor affichant le statut de stock des produits WooCommerce. Conçu pour le Loop Builder (cards produit dans les archives/catégories).

Menu sticky intelligent (hide on scroll)

Ce snippet met en place un menu sticky fixé en haut de l’écran

Méthode d’expédition gratuite avec coupon WooCommerce

Offrir les frais de livraison… mais seulement pour la méthode d’expédition que tu choisis.

WooCommerce Product Buyers List

Ajoute un onglet dans WooCommerce pour afficher les acheteurs d'un produit spécifique avec filtre de date.

Emails additionnels par produits WooCommerce

Ajoute un onglet personnalisé dans les produits WooCommerce pour écrire un e-mail spécifique à chaque produit. Celui-ci sera envoyé dans un e-mail dédié.
ON DISCUTE ?

Une question sur WordPress ?
Un projet web à faire sous traiter par un freelance ?
Je suis votre homme !