0

Voici mon code dans imports/api/friends/methods.js:Pourquoi l'e-mail de vérification des comptes Meteor personnalisé ne s'affiche-t-il pas en HTML?

import {Meteor} from "meteor/meteor"; 
import {Accounts} from "meteor/accounts-base"; 

if (Meteor.isServer) { 

    Accounts.emailTemplates.siteName = "...."; 
    Accounts.emailTemplates.from = "example01 <[email protected]>"; 
    Accounts.emailTemplates.verifyEmail.from = function() { 
     return "example01 <[email protected]>"; 
    }; 
    Accounts.emailTemplates.verifyEmail.text = function(user, url) { 
     return '<h1>Thank you for your registration.</h1><br/><a href="' + url + '">Verify eMail</a>'; 
    }; 

} 

Et ceci est le résultat:

Customized Meteor accounts verification email does not display HTML

Comme vous pouvez le voir, le format est ingnored par Gmail. Nous pouvons voir les balises HTML <h1> et <br>. Pourquoi ne s'affichent-ils pas en HTML? Pourquoi?

Répondre

3

Vous avez utilisé la mauvaise fonction. Si vous utilisez Accounts.emailTemplates.verifyEmail.text, le corps sera renvoyé sous forme de texte et non en HTML. Donc, à la place, vous devez utiliser Accounts.emailTemplates.verifyEmail.html.

Par exemple:

Accounts.emailTemplates.verifyEmail.html = function(user, url) { 
    /* Return your HTML code here: */ 
    return '<h1>Thank you for your registration.</h1><br/><a href="' + url + '">Verify eMail</a>'; 
}; 

En savoir plus sur Accounts.emailTemplates.