Étiqueté : 

2 sujets de 1 à 2 (sur un total de 2)
  • Auteur
    Messages
  • #520787
    christine
    Participant
    Points: 18 pts

    Bonjour

    J’aimerai rajouter le poids du colis (emballage) à chacune des commandes sur le site (c’est un carton fixe, donc poids fixe) mais je ne trouve pas comment faire. J’ai cherché une fonction weight dans les fichiers woocommerce, mais je ne vois rien. Est-ce que vous avez une astuce?

     

    En vous remerciant!

    depanagewp
    #520848
    christine
    Participant
    Points: 18 pts

    J’ai trouvé une solution. J’ai crée un produit invisible a 0euros avec le poids du colis. J’ai ensuite ajouter ce code a mon fichier function php

    // Fonction pour ajouter automatiquement un produit invisible au panier

    add_action( ‘woocommerce_before_calculate_totals’, ‘ajouter_produit_invisible_au_panier’ );

     

    function ajouter_produit_invisible_au_panier( $cart ) {

    if ( is_admin() && ! defined( ‘DOING_AJAX’ ) ) return;

     

    // ID du produit invisible à ajouter au panier

    $produit_invisible_id = 123; // Remplacez 123 par l’ID de votre produit invisible

     

    // Vérifier si le produit est déjà dans le panier

    $produit_present = false;

    foreach ( $cart->get_cart() as $cart_item_key => $cart_item ) {

    if ( $cart_item[‘product_id’] == $produit_invisible_id ) {

    $produit_present = true;

    break;

    }

    }

     

    // Ajouter le produit au panier s’il n’est pas déjà présent

    if ( ! $produit_present ) {

    $cart->add_to_cart( $produit_invisible_id );

    }

    }

    Puis je l’ai rendu invisible:

    add_filter( ‘woocommerce_cart_item_visible’, ‘cacher_produit_invisible’, 10, 3 );

     

    function cacher_produit_invisible( $visible, $cart_item, $cart_item_key ) {

    // ID du produit invisible

    $invisible_product_id = 123; // Remplacez 123 par l’ID de votre produit invisible

     

    if ( $cart_item[‘product_id’] == $invisible_product_id ) {

    $visible = false;

    }

     

    return $visible;

    }

     

    depanagewp
2 sujets de 1 à 2 (sur un total de 2)
  • Vous devez être connecté pour répondre à ce sujet.