WooFrance Dépannage et support WordPress WooCommerce › Forums › Le coins des traductions › Comment modifier les textes des e-mails transactionnel de woocommerce
- Ce sujet contient 10 réponses, 6 participants et a été mis à jour pour la dernière fois par Manfred Desmartin, le il y a 4 années et 2 mois.
-
AuteurMessages
-
19 octobre 2017 à 10 h 27 min #41172
Bonjour à tous,
Je souhaite personnaliser les textes des e-mails transactionnel envoyé par woocommerce au client et avant de commencer j’aurais voulu vérifier avec vous le point suivant :
J’ai télécharger le logiciel POEDIT pour modifier le fichier « woocommerce-fr_FR.po » qui est dans le répertoire : wp-content / languages / pluginsEst-ce que ce fichier ne risque pas d’être écrasé par la suite par une nouvelle version lors de la mise à jour de woocommerce ?
Dois-je le déposer dans une sorte de répertoire « woocommerce child » comme pour un thème ?19 octobre 2017 à 15 h 34 min #4125519 octobre 2017 à 19 h 02 min #4139121 octobre 2017 à 22 h 35 min #42160Un rajout par rapport à la question du fichier de traduction.
Si un nouveau fichier de traduction est fourni par l’extension, il est enregistré danslanguages/plugins
en écrasant le fichier existant.Donc pour utiliser une traduction personnalisée pour certaines chaines, il y a 3 choses à faire
- charger son fichier avant celui de woocommerce donc à l’action
init
avec une priorité inférieure à 0 - empêcher le nettoyage de woocommerce. Avant de charger sa traduction, woocommerce efface ce qui existe déjà mais heureusement on peut bloquer cela avec un filtre
- charger son fichier avec
load_textdomain
puisque la fonctionload_plugin_textdomain
ne fonctionne plus pour les extensions de wordpress.org depuis qu’ils ont mis le bazar dans cette fonction à la sortie de WordPress 4.6
J’ai essayé avec le code suivant et ça a l’air de faire le travail :
add_action("init", function () { $domain = "woocommerce"; $locale = apply_filters( 'plugin_locale', is_admin() ? get_user_locale() : get_locale(), $domain ); load_textdomain($domain, __DIR__ . "/langues-woocommerce/$domain-$locale.mo"); }, -20); add_filter("override_unload_textdomain", function ($override, $domain) { if ("woocommerce" === $domain) { $override = TRUE; } return $override; }, 10, 2);
Je conseille de créer une extension pour cela pour éviter de refaire la manipulation au prochain changement de thème.
la 1re chose à faire est de créer un répertoire dans « wp-content/plugins ». Dans ce répertoire vous créez un fichier avec le nom que vous voulez et l’extension « .php » et vous mettez ceci :
<?php /** * Plugin Name: Nom de l'extension **/
Ensuite dans l’espace d’administration, vous allez dans la partie « Extensions » et vous pouvez l’activer.
À partir de là, l’extension ne fait encore rien donc vous rajoutez ensuite, dans ce fichier PHP, le code que j’ai indiqué au début de ce message. Et vous mettez le fichier « woocommerce-FR_fr.mo » dans un répertoire « langues-woocommerce » dans l’extension.
Développeur PHP et WordPress En Alsace dans l'annuaire des prestataires WordPress et WooCommerce
Création d'extensions pour WordPress et WooCommerce - Personnalisation d'extensions existantes
🔶 Si vous appréciez mon aide, vous pouvez me faire un don de n'importe quel montant en cliquant ici.27 octobre 2017 à 22 h 49 min #4260127 octobre 2017 à 22 h 50 min #4260228 octobre 2017 à 8 h 04 min #4261121 novembre 2017 à 19 h 30 min #46043Donc … j’ai opté pour la solution “Email Customizer for WooCommerce” et très sincèrement, je le trouve très bien.
Il n’est pas très riche en template, mais j’en ai choisi un qui me convenait très bien et la personnalisation est assez simple à mettre en place.
En tout cas, c’est beaucoup mieux que le mail de standard de WooCommerce 😉
1 user thanked author for this post.
6 mai 2018 à 23 h 57 min #6065313 septembre 2020 à 22 h 59 min #19591813 septembre 2020 à 23 h 35 min #195920 - charger son fichier avant celui de woocommerce donc à l’action
-
AuteurMessages
- Vous devez être connecté pour répondre à ce sujet.