MJML

MJML est un outil permettant de générer très facilement des templates de newsletters email. Étant donné la complexité du développement de template email, cette aide est appréciable au travail.

C’est une librairie javascript, utilisable en ligne de commande, et installable depuis NPM. Pour l’installer : la commande npm install -g mjml suffira. MJML utilise son propre language avec des balises propres. Elles sont assez intuitives de nom, tels que : mj-text, mj-image, ou encore . En suivant la documentation, on arrive facilement à un résultat propre.

L’utilisation des mj-section, et mj-column est recommandé pour pouvoir faire de belles mises en pages, et qui s’adaptent aussi sur les clients emails mobiles. MJML est une compilation de recherches de plusieurs professionnels et donc cette solution est adaptée pour pouvoir créer des newsletter lisible sur tous supports.

Pour compiler le fichier mjml en html : mjml -r fichier_de_base.mjml -o fichier_final.html

Quand j’écris mon template, j’aime pouvoir voir les changements directement et en tapant mjml -w fichier_de_base.mjml -o fichier_final.html, le fichier_final.html est recompilé à chaque sauvegarde du fichier_de_base.mjml.

Après, j’ai tendance aussi à entourer les mots ou urls dynamiques de ma newsletter par des pipes |name|. Cela me permet de pouvoir cibler plus facilement le mot en PHP plus tard quand je fais un str_replace('|name', $contact->name, 'fichier_final.html); de ce mot.

Utilisé en conjonction avec une API d’un service d’envoi de mail tel que MailChimp ou Mailjet, ou même directement en SMTP depuis mon serveur, cela me permet d’envoyer des newsletter personnalisées à un grand nombre de personnes, et en utilisant peu de ressource de développement.