Swan MAHE (Créer un compte)

Toutes mes réponses sur les forums

15 sujets de 16 à 30 (sur un total de 102)
  • Auteur
    Messages
  • en réponse à : Variation d’images sous Elementor #2401627
    Mandes
    Participant
    Chevalier WordPress
    143 contributions

    Du coup tout cela me fait réfléchir… j’ai rien changé coté pages produits WP… mes images de variations sont bien là… mais j’ai peut être raté quelque chose coté Elementor ? J’ai importé une page produit sans rien modifier… en même temps j’ai parcouru les menus d’Elementor… je ne vois rien de particulier sur le sujet… Merci pour vos suggestions.

     

    en réponse à : Variation d’images sous Elementor #2401625
    Mandes
    Participant
    Chevalier WordPress
    143 contributions

    Salut,

    Merci pour ton message que je consulte à l’instant.

    Etrangement les variations d’images fonctionnaient parfaitement sans Elementor. J’ai vérifié la configuration. Rien ne me parait anormal… bizarre, bizarre. Belle soirée.

    en réponse à : [Résolu] Panier Elementor dans menu principal ? #2400448
    Mandes
    Participant
    Chevalier WordPress
    143 contributions

    Finalement il suffisait de désactiver l’extension Woocommerce Menu Cart que j’avais installé… Merci 😉

    Mandes
    Participant
    Chevalier WordPress
    143 contributions

    Bonsoir Ferman et merci beaucoup pour cette nouvelle réponse que je découvre à l’instant.

    Ce qui nous donne donc au final (je place le global ci-après pour celles et ceux intéressés par ce code génial) :

    function ferman_add_product_to_cart() {

    $cart_total = 50;
    $free_product = wc_get_product( 22559 );
    $subtotal = WC()->cart->subtotal;
    $free_product_id = $free_product->get_ID(); // Product Id of the free product which will get added to cart
    $free_product_price = $free_product->get_regular_price($free_product_id);
    $free_product_reduced_price = $free_product->get_sale_price($free_product_id);
    $found = false;

    //check if product already in cart
    if ( sizeof( WC()->cart->get_cart() ) > 0 ) {
    foreach ( WC()->cart->get_cart() as $cart_item_key => $values ) {
    $product = $values['data'];
    if ( $product->get_id() == $free_product_id )
    $found = true;
    }
    // if product not found, add it
    if ( ! $found && $subtotal >= $cart_total ){

    WC()->cart->add_to_cart( $free_product_id );
    }
    elseif ($found && $subtotal < $cart_total ){
    $product_cart_id = WC()->cart->generate_cart_id( $free_product_id );
    $cart_item_key = WC()->cart->find_product_in_cart( $product_cart_id );
    if ( $cart_item_key ) {WC()->cart->remove_cart_item( $cart_item_key );}
    else {return;}
    }
    }
    else {
    return;
    }
    }

    add_action( 'template_redirect', 'ferman_add_product_to_cart' );


    function bbloomer_find_product_in_cart_modif() {

    $free_product = wc_get_product( 22559 );
    $free_product_id = $free_product->get_ID();
    $free_product_price = $free_product->get_regular_price($free_product_id);
    $free_product_name = $free_product->get_name($free_product_id);
    $in_cart = false;

    foreach( WC()->cart->get_cart() as $cart_item ) {
    $product_in_cart = $cart_item['product_id'];
    if ( $product_in_cart === $free_product_id ) $in_cart = true;
    }
    if ( $in_cart ) {
    $notice = 'Pour cette commande nous vous offrons ce produit : '. $free_product_name.' Valeur : '.$free_product_price.' euros.';
    wc_print_notice( $notice, 'notice' );
    }
    }
    add_action( 'woocommerce_before_cart', 'bbloomer_find_product_in_cart_modif' );

    Mandes
    Participant
    Chevalier WordPress
    143 contributions

    Bonsoir,

    Je me demandais ce qu’il fallait que je modifie pour que le produit gratuit s’ajoute lorsque le sous-total (et non pas le total qui inclut les frais de port) atteint le minimum d’achat. Dois je remplacer « total » par « subtotal » partout dans le code ? Je ne sais pas si c’est correct. Merci pour vos conseils 😉

    Mandes
    Participant
    Chevalier WordPress
    143 contributions

    Merveilleux. Tout à l’air ok maintenant.

    Merci infiniment Ferman.

    Mandes
    Participant
    Chevalier WordPress
    143 contributions

    Bonsoir,

    A la ligne 23 de la première fonction vous m’avez demandé de remplacer « total-$free_product_price  » par simplement « total ».

    Sinon tout fonctionne parfaitement. J’ai juste cette petite alerte. Merci.

    Mandes
    Participant
    Chevalier WordPress
    143 contributions

    Bonjour,

    Je viens de m’apercevoir que j’ai cette alerte sur la ligne :  $total = total;

    Warning: Use of undefined constant total - assumed 'total' (this will throw an Error in a future version of PHP) in /homepages/5/d689643507/htdocs/wp-content/themes/storefrontenfant/functions.php on line 146

    Une idée peut-être ?

    Merci 🙂

    Mandes
    Participant
    Chevalier WordPress
    143 contributions

    J’ai tout modifié selon vos indications.

    Tout semble fonctionner parfaitement.

    C’est vraiment du génie.

    Votre travail et vos conseils sont d’une immense utilité.

    Un grand grand grand merci 🙂

     

     

    Mandes
    Participant
    Chevalier WordPress
    143 contributions

    Correction : pas d’erreur sur function bbloomer (l’erreur c’était moi) 🙂

    Mandes
    Participant
    Chevalier WordPress
    143 contributions

    Bonsoir Ferman et merci pour ce code merveilleux !

    Pour tester j’ai laissé le seuil à 200€.
    – J’ai ajouté des produits payants au panier jusqu’à dépasser le seuil pour arriver à : 200.60€ -> le produit gratuit s’est bien ajouté au panier.
    – J’ai ensuite ajouté un produit payant. Nouveau montant : 206.50€ -> le produit gratuit est resté dans le panier (parfait).
    – J’ai supprimé le dernier produit ajouté, le montant du panier est donc revenu à 200,60€ mais bizarrement le produit gratuit a disparu du panier. Je dois ajouter un produit payant pour que le produit gratuit revienne dans le panier.

    – Problème : Lignes 16 et 17 : Si je change $_product par $product.; = erreur.

    – Ligne 23 de la première fonction: remplacer « total-$free_product_price » par simplement « total » -> OK fait.

    – Pour finir, j’ai une erreur si j’ajoute la function bbloomer.

    Voilà pour mon petit rapport 😉
    Merci beaucoup pour ce code absolument génial.

    • Cette réponse a été modifiée le il y a 1 année et 11 mois par Mandes.
    • Cette réponse a été modifiée le il y a 1 année et 11 mois par Mandes.
    en réponse à : [Résolu] Aide sur code (ajout d’un produit gratuit au panier) #2392269
    Mandes
    Participant
    Chevalier WordPress
    143 contributions

    Bonsoir et merci pour vos éclairages.

    Ferman… un grand merci.

    C’est tellement cool d’avoir la chance de bénéficier de telles compétences.

    Le code final donnerait donc :

    function action_woocommerce_removed_coupon( $coupon_code ) { 

    if($coupon_code == 'test') {

    $product_id = 22559;
    $product_cart_id = WC()->cart->generate_cart_id( $product_id );
    var_dump ($product_cart_id);
    $cart_item_key = WC()->cart->find_product_in_cart( $product_cart_id );
    if ( $cart_item_key ) WC()->cart->remove_cart_item( $cart_item_key );
    }
    }
    add_action( 'woocommerce_removed_coupon', 'action_woocommerce_removed_coupon', 10, 1 );


    add_action('woocommerce_applied_coupon', 'apply_product_on_coupon');
    function apply_product_on_coupon( ) {
    global $woocommerce;
    $coupon_idcus = 'test';
    $free_product_id = 22559;

    if(in_array($coupon_idcus, $woocommerce->cart->get_applied_coupons())){
    $woocommerce->cart->add_to_cart($free_product_id, 1);
    }
    }

    Ton code est parfait et fonctionne donc idéalement. Respect.

    Merci, merci infiniment.

    Bonne soirée à toutes, tous.

    • Cette réponse a été modifiée le il y a 1 année et 11 mois par Mandes.
    • Cette réponse a été modifiée le il y a 1 année et 11 mois par Mandes.
    en réponse à : [Résolu] Aide sur code (ajout d’un produit gratuit au panier) #2392243
    Mandes
    Participant
    Chevalier WordPress
    143 contributions

    Bonjour,

    Avec ce code je n’ai plus d’erreur. Le produit gratuit monte bien dans le panier si la commande est au minimum de 50€ (réglage code promo Woo) mais il reste dans le panier si on descend ensuite la commande à – par exemple –  40€. Simultanément l’alerte indique pourtant bien que le code promo n’est plus valable.

     

    function action_woocommerce_removed_coupon( $coupon_code ) { 
    if($coupon_code == 'test') {

    $product_id = 22559;
    $product_cart_id = WC()->cart->generate_cart_id( $product_id );
    $cart_item_key = WC()->cart->find_product_in_cart( $product_cart_id );
    if ( $cart_item_key ) WC()->cart->remove_cart_item( $cart_item_key );
    }
    };

    add_action('woocommerce_applied_coupon', 'apply_product_on_coupon');
    function apply_product_on_coupon( ) {
    global $woocommerce;
    $coupon_idcus = 'test';
    $free_product_id = 22559;

    if(in_array($coupon_idcus, $woocommerce->cart->get_applied_coupons())){
    $woocommerce->cart->add_to_cart($free_product_id, 2);
    }
    }

    en réponse à : [Résolu] Aide sur code (ajout d’un produit gratuit au panier) #2392240
    Mandes
    Participant
    Chevalier WordPress
    143 contributions

    Bonjour ferman et merci pour ce retour.

    J’ai essayé mais j’ai une erreur à la ligne 123 qui est uniquement composée d’une } Une idée peut-être ? Merci 😉

    Erreur d'analyse : erreur de syntaxe, '}' inattendu, attente de la fin du fichier dans /homepages/5/d689643507/htdocs/wp-content/themes/storefrontenfant/functions.php à la ligne 123

    • Cette réponse a été modifiée le il y a 1 année et 11 mois par Mandes.
    en réponse à : [Résolu] Ajouter un lien #2353390
    Mandes
    Participant
    Chevalier WordPress
    143 contributions

    Un coup de génie ! Merci ferman ?

     

15 sujets de 16 à 30 (sur un total de 102)