- WordPress :6.1
- Statut : résolu
- Ce sujet contient 32 réponses, 3 participants et a été mis à jour pour la dernière fois par
communicationmrlaurent@gmail.com, le il y a 1 mois et 3 semaines.
-
AuteurMessages
-
25 mars 2023 à 10 h 28 min #2449975
Bonjour,
Ma configuration WP actuelle
- Version de PHP/MySQL :
- Thème utilisé : Divi
- Extensions en place :
- Nom de l’hébergeur : 02Switch
- Adresse du site : 8e-19b930707bf4.wptiger.fr (adresse de développement temporaire)
Problème(s) rencontré(s) :
Bonjour,
Je cherche à afficher quelque chose de particulier sur la page de paiement woo-commerce sur le site que je développe ! Mon client est membre d’1% pour la planète. Il aimerait que les 1% du montant HT de la commande du client soit affiché, avec un message du genre : « Avec votre commande, vous reversez X€ directement à 1% for the planet ».
Je ne trouve pas de solution pour l’instant pour faire ça, je ne sais pas s’il est possible de récupérer un shortcode déjà qui donnerai l’information du prix HT de la commande du client puis avec une formule peut-être sous forme du code que ça prenne 1% de ce montant ? Merci d’avance pour votre aide.
25 mars 2023 à 19 h 52 min #2450022Salut, c’est une fonction de frais (fees), tu as plein d’extensions pour faire ça.
Tu as aussi un snippet PHP à mettre dans le fichier functions.php de ton thème enfant (si tu en utilises un).
31 mars 2023 à 10 h 05 min #2450868Salut, merci pour la réponse !
J’ai rajouté un snippet PHP, et ça fonctionne mais pas exactement comme j’aimerai, j’ai rajouté le code ci-dessous. Seulement cela rajoute bien 1% du montant comme une surcharge et change le montant du panier. Ce n’est pas ce que je souhaite, j’aimerai que ça affiche 1% du montant sans que ça change le montant du panier, que ça n’ajoute pas 1% mais affiche uniquement 1% du montant actuel. Est-il possible d’adapter ce code ? Sans que ça ne s’affiche non plus dans la facture ?
/**
* Add a 1% surcharge to your cart / checkout
* change the $percentage to set the surcharge to a value to suit
*/
add_action( 'woocommerce_cart_calculate_fees','woocommerce_custom_surcharge' );
function woocommerce_custom_surcharge() {
global $woocommerce;
if ( is_admin() && ! defined( 'DOING_AJAX' ) )
return;
$percentage = 0.01;
$surcharge = ( $woocommerce->cart->cart_contents_total + $woocommerce->cart->shipping_total ) * $percentage;
$woocommerce->cart->add_fee( 'Surcharge', $surcharge, true, '' );
}31 mars 2023 à 10 h 12 min #2450871Je rajoute qu’en plus il faut que ce soit 1% du montant HT.
31 mars 2023 à 12 h 40 min #2450882Salut, effectivement je n’ai pas bien compris, je ne trouve pas d’extension ou de snippet pour ça, un ou une dev WP devrait pouvoir faire ça.
Pose ta question sur le support WP (en anglais).
31 mars 2023 à 14 h 47 min #2450891Bonjour,
Essayez cette modification du snippet:
add_action( 'woocommerce_cart_totals_after_shipping','woocommerce_custom_surcharge' );
function woocommerce_custom_surcharge() {
global $woocommerce;
if ( is_admin() && ! defined( 'DOING_AJAX' ) )
return;
$percentage = 0.01;
$surcharge = round(( $woocommerce->cart->cart_contents_total + $woocommerce->cart->shipping_total ) * $percentage,2);
echo "<p class= 'surcharge'>Avec votre commande, vous reversez $surcharge € directement à 1% for the planet </p>";
}J’ai mis une classe (.surcharge) pour pouvoir donner le style que vous voulez à la phrase.
-
Cette réponse a été modifiée le il y a 2 mois par
ferman.
1 avril 2023 à 9 h 14 min #2450955Ok je vais essayer merci
1 avril 2023 à 9 h 15 min #2450956Merci pour cet essai, mais quand je remplace le snippet avec le vôtre la surcharge disparaît totalement dans la page panier.
1 avril 2023 à 11 h 19 min #2450962Vous disiez:
J’ai rajouté un snippet PHP, et ça fonctionne mais pas exactement comme j’aimerai, j’ai rajouté le code ci-dessous. Seulement cela rajoute bien 1% du montant comme une surcharge et change le montant du panier. Ce n’est pas ce que je souhaite, j’aimerai que ça affiche 1% du montant sans que ça change le montant du panier, que ça n’ajoute pas 1% mais affiche uniquement 1% du montant actuel.
J’avais donc compris la chose suivante: vous avez un total (par exemple 100€) dans votre panier. De ce total 1% ht sont pour « 1% for the planet » le montant est inchangé (100€) et le client est averti que sur ces 100€, 1% du montant est reversé. C’est ce que fait le snippet que je vous ai passé (la phrase après le panier).
Ce n’est pas ce que vous vouliez? J’ai donc également mal compris.
1 avril 2023 à 11 h 41 min #2450965Si si c’est bien ça, mais quand j’applique le snippet, rien ne s’affiche dans la page panier pour le montrer 🙂 Par rapport au code de départ où une ligne était rajoutée, mais qui modifiait le prix.
Fichiers joints :
Vous devez être connecté pour voir les fichiers joints.1 avril 2023 à 11 h 45 min #2450967Je rajoute aussi la capture écran du résultat avec l’ancien code pour comparer.
Fichiers joints :
Vous devez être connecté pour voir les fichiers joints.1 avril 2023 à 12 h 07 min #2450970C’est bizarre. En copie d’écran, ce que je vois chez moi: C’est la page panier woocommerce d’origine. Peut-être que votre page est customizée (contrôlée par DIVI par exemple), auquel cas le snippet ne peut pas s’appliquer.
-
Cette réponse a été modifiée le il y a 2 mois par
ferman.
1 avril 2023 à 12 h 13 min #24509741 avril 2023 à 12 h 19 min #2450977Arf oui, elle est entièrement faite avec DIVI… Il me faut trouver une solution pour l’afficher alors, car c’est exactement ce que je souhaite afficher au vu de vos screenshots, en HT par contre oui.
-
Cette réponse a été modifiée le il y a 2 mois par
communicationmrlaurent@gmail.com.
1 avril 2023 à 12 h 21 min #2450979Salut, en enlevant le port ça semble mieux non ? Pas certain.
// AJOUTER UN MESSAGE POUR 1% FOR THE PLANET
add_action( 'woocommerce_cart_totals_after_shipping','woocommerce_custom_surcharge' );
function woocommerce_custom_surcharge() {
global $woocommerce;
if ( is_admin() && ! defined( 'DOING_AJAX' ) )
return;
$percentage = 0.01;
$surcharge = round(( $woocommerce->cart->cart_contents_total ) * $percentage,2);
echo "<p class='surcharge'>Avec votre commande, vous reversez $surcharge € directement à 1% for the planet </p>";
}Fichiers joints :
Vous devez être connecté pour voir les fichiers joints. -
AuteurMessages
- Vous devez être connecté pour répondre à ce sujet.