Testé Magento 2.3 et 2.4

Comment changer, sans passer par l’interface d’administration mais dans le code source, le logo et surcharger le header et le footer des templates d’email transactionnels? Ressources officielles en ligne pour la gestion des emails transactionnels dans Magento 2:

Préparer l’image qui vous servira de logo

Première étape: voir ici comment préparer un logo pour les emails transactionnels dans Magento 2.

Votre fichier sera, de préférence au format PNG et son libellé sera logo_email.png.

Modifier le fichier app/etc/config.php

Puis exécuter la commande $ n98-magerun2 setup:upgrade $ n98-magerun2 app:config:import.

Surcharger le logo natif de Magento 2 par votre propre logo

Chemin du fichier source: vendor/magento/module-email/view/frontend/web/logo_email.png. Chemin du fichier de destination: app/design/frontend/MyVendor/myTheme/Magento_Email/web/logo_email.png.

Surcharger le header et le footer des templates d’email transactionnels dans Magento 2

Header

Chemin du fichier source: vendor/magento/module-email/view/frontend/email/header.html. Chemin du fichier de destination: app/design/frontend/MyVendor/myTheme/Magento_Email/email/header.html.

Footer

Chemin du fichier source: vendor/magento/module-email/view/frontend/email/footer.html. Chemin du fichier de destination: app/design/frontend/MyVendor/myTheme/Magento_Email/email/footer.html.

Afficher une image stockée dans un thème

Comme d’hab: rien dans la doc à ce sujet à part pour le logo et aucun code fourni sur les forums ne fonctionne… Faire comme ceci:

Une liste complète des variables par défaut exploitables dans les templates d’email transactionnels de Magento 2

edit: source officielle (toujours mieux) Email templates Variable Reference.

Source: A Complete List of Default Variables Used in Magento 2 Email Templates et la version PDF pour la postérité.

ATTENTION: il y a un souci de formattage des double quotes dans la doc officielle. Si cous copiez/collez ceci: {{config path=”general/store_information/name”}} dans votre code source, l’information ne sera pas récupérée. Il faut mettre ceci: {{config path="general/store_information/name"}}.

Bonus: header et footer par défaut pour l’ensemble des gabarits d’email