- WordPress :6.2
- Statut : résolu
- Ce sujet contient 16 réponses, 5 participants et a été mis à jour pour la dernière fois par Li-An, le il y a 1 année et 1 mois.
-
AuteurMessages
-
30 mai 2023 à 11 h 28 min #2455352
Bonjour,
Ma configuration WP actuelle
- Version de PHP/MySQL : 7.4
- Thème utilisé : Astra
- Extensions en place : Elementor Pro
- Nom de l’hébergeur : OVH
- Adresse du site :
Problème(s) rencontré(s) : Bonjour,
lorsqu’un client souhaite modifier le contenu de son panier sans devoir repasser par la page boutique, il doit utiliser le bouton « update cart » afin de mettre son panier à jour. Je trouve cela ennuyeux et je voudrais automatiser cette mise à jour sans devoir passer par un plugin en modifiant le code dans le fichier « functions.php » de mon thème enfant.
J’ai bien trouvé du code sur le Net mais cela coince et en plus comme je ne suis pas expert…
Quelqu’un pourrait-il m’aider sur ce point.
Les remarques sont aussi bienvenues 🙂
Merci30 mai 2023 à 18 h 17 min #2455361Bonjour, vous voulez mettre à jour en cas de changement de quantité ?
30 mai 2023 à 21 h 00 min #2455365Oui c’est bien cela.
J’ai bien trouvé un code (ici: https://codexcoach.com/automatically-update-cart-when-quantity-changed-in-woocommerce/ )qui aurait pû m’aider mais la mise à jour ne se réalise qu’au premier changement de quantité, mais si je veux modifier un second produits là, plus de mise à jour (:-30 mai 2023 à 21 h 14 min #2455366Il y a des extensions qui font ça type https://fr.wordpress.org/plugins/woocommerce-ajax-cart/
31 mai 2023 à 15 h 14 min #2455382Bonjour,
merci pour l’info mais je dépite un peu car le code trouvé sur internet fonctionne parfaitement sauf…que si on souhaite faire une seconde modification dans la foulée, là plus de mise à jour des prix.
Dommage mais ma méconnaissance du codage me joue certainement des tours car ce code est répercuté partout. Je vais encore cherché un peu.De plus c’est assez rigolo car j’ai installé le plugin mais l’option free n’offrant rien il faut immédiatement passer vers la version premium. Je peux comprendre que tout travail mérite salaire mais acheter sans voir c’est un peu dommage.
31 mai 2023 à 15 h 53 min #2455385Le code, il est basique, il faut juste copier. Essayez https://wordpress.org/plugins/woo-ajax-add-to-cart/ ou https://wordpress.org/plugins/wpc-ajax-add-to-cart/
31 mai 2023 à 16 h 33 min #2455386Bonjour,
Le deuxième code sur cette page n’est pas limité à une seule modification. Il faudra ensuite simplement cacher le bouton d’ajout au panier.
- Cette réponse a été modifiée le il y a 1 année et 4 mois par ferman.
1 juin 2023 à 21 h 10 min #2455465@Li-An,
contrairement à ce que j’ai raconté dans ma réponse à votre post initial le plugin proposé dans sa version free fonctionne parfaitement.
Merci à vous.
@<ferman,
Comme cela reste ma préférence, j’ai testé votre proposition dans mon thème enfant ma pas de chance, cela ne fonctionne pas…
Une erreur de ma part ?? Je n’ai pourtant réalisé qu’un copier/coller.
Voici la version du fichier funvtion.php
<div><?php</div>
<div>// Exit if accessed directly</div>
<div>if ( !defined( ‘ABSPATH’ ) ) exit;</div>
<div></div>
<div>// BEGIN ENQUEUE PARENT ACTION</div>
<div>// AUTO GENERATED – Do not modify or remove comment markers above or below:</div>
<div></div>
<div>if ( !function_exists( ‘chld_thm_cfg_locale_css’ ) ):</div>
<div> function chld_thm_cfg_locale_css( $uri ){</div>
<div> if ( empty( $uri ) && is_rtl() && file_exists( get_template_directory() . ‘/rtl.css’ ) )</div>
<div> $uri = get_template_directory_uri() . ‘/rtl.css’;</div>
<div> return $uri;</div>
<div> }</div>
<div>endif;</div>
<div>add_filter( ‘locale_stylesheet_uri’, ‘chld_thm_cfg_locale_css’ );</div>
<div></div>
<div>if ( !function_exists( ‘child_theme_configurator_css’ ) ):</div>
<div> function child_theme_configurator_css() {</div>
<div> wp_enqueue_style( ‘chld_thm_cfg_child’, trailingslashit( get_stylesheet_directory_uri() ) . ‘style.css’, array( ‘astra-theme-css’,’woocommerce-layout’,’woocommerce-smallscreen’,’woocommerce-general’ ) );</div>
<div> }</div>
<div>endif;</div>
<div>add_action( ‘wp_enqueue_scripts’, ‘child_theme_configurator_css’, 10 );</div>
<div></div>
<div>// END ENQUEUE PARENT ACTION</div>
<div></div>
<div>function update_cart_refresh_update_qty() {</div>
<div> if (is_cart()) :</div>
<div> ?></div>
<div> <script type= »text/javascript »></div>
<div> jQuery( function($){</div>
<div> $(‘.qty’).on(‘change’, function(){</div>
<div> setTimeout(function() {//This is set, so it gives the update cart button time to enable from disable mode</div>
<div> $(‘input[name= »update_cart »]’).trigger(‘click’);</div>
<div> }, 2000);</div>
<div></div>
<div> });</div>
<div> });</div>
<div> </script></div>
<div> <?php</div>
<div> endif;</div>
<div>}</div>
<div>add_action( ‘wp_footer’, ‘update_cart_refresh_update_qty’);</div>
<div>}</div>1 juin 2023 à 21 h 24 min #2455466Bonjour,
J’avais précisé le deuxième code. Il marche très bien sur mon site d’essai. Ce que vous montrez est le premier code sur la page. Je ne l’ai pas essayé.
D’un autre côté si vous avez une extension qui donne satisfaction…
5 juin 2023 à 17 h 29 min #2455673Bonjour,
je reviens vers vous afin de donner du retour suite à votre aide.
@Li-An: ce plugin fontcionne bien https://wordpress.org/plugins/woo-ajax-add-to-cart/ , la seule particularité tient au fait qu’il ajoute encore les signes « + » et « – » à ceux existants déjà. Pas trop grave car avec le peu de CSS que je connais j’ai pu aranger cela.
@Ferman,
en effet, je m’étais trompé de code. Celui proposé fonctionne très bien sauf que chez moi il faut cliquer deux fois avant que la mise à jour se réalise.
Avez-vous ce même problème avec votre site de test ? Dommage car le code reste ma préférence.5 juin 2023 à 18 h 03 min #2455676Si le code est quelque fois préférable à une extension trop lourde, dans votre cas, je privilégierai l’extension. Comme WooC évolue tout le temps, l’extension a l’avantage de s’adapter à ces changements.
21 juillet 2023 à 8 h 47 min #2458085Bonjour,
J’ai exactement le même problème que vous, mais mes compétences en CSS ne m’ont pas permis d’enlever les signes + et – qu’il y a en doublon.
Est ce qu’il serait possible de me fournir le code que vous avez mis ?
Merci beaucoup 🙂
22 juillet 2023 à 19 h 06 min #2458127désolé pour le retard mis à répondre mais au final, je me suis résolu à passer par le plugin conseillé par Li An.
Cela fonctionne parfaitementMaintenant ce qui aide beaucoup c’est l’outil inspecter du navigateur, avec celui-là vous pouvez repérer l’élément qui vous intéresse et le manipuler à votre guise.
Perso, cela m’aide pas mal22 juillet 2023 à 20 h 36 min #2458129Et moi je réponds aussi avec « un peu » de retard à la question:
...il faut cliquer deux fois avant que la mise à jour se réalise.
Avez-vous ce même problème avec votre site de test ?…Non, chez moi une fois suffit.
22 juillet 2023 à 20 h 58 min #2458130Merci pour votre aide, tout est maintenant Ok chez moi.
- Version de PHP/MySQL : 7.4
-
AuteurMessages
- Vous devez être connecté pour répondre à ce sujet.