Je suis en train de jouer avec les API de Mailchimp, mais la documentation que j'ai pour moi n'est pas très claire. Voici ce que je veux réellement:
Si l'option 1 n'est pas possible, puis-je créer mon propre modèle dans mon propre environnement et l'envoyer par Mailchimp ou Mandrill?
Devrais-je utiliser les services Mailchimps à cet effet ou envoyer l'e-mail directement à partir de mon propre serveur?
Fonction courante utilisée:
function tep_mandrill_mail($to_name, $to_email_address, $email_subject, $email_text, $from_email_name, $from_email_address) {
if (SEND_EMAILS != 'true') return false;
$uri = 'https://mandrillapp.com/api/1.0/messages/send-template.json';
$postString = '{
"key": "xxxxxxxxxxx",
"template_name": "sometemplatename",
"template_content": [
{
"name": "header",
"content": "*|HEADERSTUFF|*"
},
{
"name": "main",
"content": "*|CONTENTSTUFF|*"
},
{
"name": "footer",
"content": "*|FOOTERSTUFF|*"
}
],
"message": {
"subject": "'.$email_subject.'",
"from_email": "'.$from_email_adress.'",
"from_name": "'.$from_email_name.'",
"to": [
{
"email": "'.$to_email_address.'",
"name": "'.$to_name.'"
}
],
"important": false,
"track_opens": true,
"merge": true,
"merge_vars": [
{
"rcpt": "'.$to_email_address.'",
"vars": [
{
"name": "HEADERSTUFF",
"content": "'.$email_subject.'"
},
{
"name": "CONTENTSTUFF",
"content": "'.$email_text.'"
},
{
"name": "FOOTERSTUFF",
"content": "paulvale-foot"
}
]
}
],
"tags": [
"password_forgotten"
]
},
"async": false,
"ip_pool": "Main Pool"
}';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $uri);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true );
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true );
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postString);
curl_exec($ch);
}
Les types d’emails dont vous parlez sont des emails "transactionnels" et non "newsletter". Le produit Mailchimp principal est conçu pour l’envoi de newsletters. Vous envoyez des emails presque identiques à tous les destinataires d’une liste de diffusion, tous en même temps. Les e-mails transactionnels sont envoyés lorsque les utilisateurs en ont besoin et sont déclenchés par des actions sur votre site.
L'offre principale de Mailchimp est destinée à l'envoi de newsletters. Leur division Mandrill est configurée pour gérer les emails transactionnels. Si vous utilisez Mailchimp pour cela, vous voulez certainement utiliser Mandrill.
Lors de l'utilisation d'un service de messagerie fonctionnant avec des modèles, vous n'avez généralement pas besoin que le modèle soit visible sur votre serveur. Vous pouvez configurer des modèles comme:
Hello $user,
Your new password is: $password
Vous utiliseriez l'API pour transmettre les données nécessaires pour envoyer l'e-mail au service:
mandrill->send(
"to" -> "[email protected]",
"template" -> "new password",
"user" -> "Bob",
"password" -> "GXFjTZNy"
);
Je ne suis pas particulièrement familiarisé avec Mandrill, de sorte que leurs appels d'API et leur syntaxe de modèle seront probablement différents de ce que j'ai posté ici. Ils ont la documentation pour
Il me semble que l’API Mandrill est un choix raisonnable pour le courrier électronique transactionnel de votre site Web.
Si vous ne voulez pas spécifier vos modèles à l'avance, vous pouvez avoir votre application ajouter ses propres modèles . Il existe également un moyen de lister tous les modèles disponibles . Si rien d'autre, vous pourriez envoyer vos emails sans utiliser de modèles du tout .