Aller au contenu
Docs

Tutoriel

Envoyer les e-mails de WordPress avec Emailit

Faites passer les e-mails de WordPress, de WooCommerce et des formulaires de contact par le SMTP d’Emailit avec WP Mail SMTP ou un petit plugin, en utilisant une clé API comme mot de passe.

Mis à jour le 1 oct. 2026

WordPress envoie les réinitialisations de mot de passe, les commandes WooCommerce et les messages des formulaires de contact avec wp_mail(), qui utilise par défaut la configuration e-mail du serveur et finit souvent dans les spams. Ce guide fait passer ces e-mails par le relais SMTP d’Emailit, soit avec le plugin WP Mail SMTP, soit avec quelques lignes de code.

Prérequis

  • Un accès administrateur à votre site WordPress.
  • Un domaine d’envoi vérifié, par exemple acme.com. L’adresse d’expéditeur de votre site doit l’utiliser.
  • Une clé API. Créez une clé Sending Only limitée à votre domaine, nommée par exemple wordpress-acme, pour qu’un paramètre de plugin divulgué ne puisse servir à rien d’autre.
  • Tant que votre espace de travail n’a pas l’accès production, vous ne pouvez envoyer qu’aux adresses e-mail des comptes des membres de l’espace de travail. Testez avec votre propre adresse.

Paramètres SMTP

Voici les valeurs à saisir dans n’importe quel plugin SMTP :

Paramètre Valeur
Hôte SMTP smtp.emailit.com
Chiffrement TLS (STARTTLS)
Port SMTP 587
Authentification Activée
Nom d’utilisateur SMTP emailit
Mot de passe SMTP Votre clé API (secret_…)
Adresse d’expéditeur Une adresse de votre domaine vérifié, par exemple hello@acme.com

Si votre hébergeur bloque le port 587, utilisez 2525 ou 2587 avec TLS, ou 465 avec SSL. Consultez Paramètres SMTP.

Configurer WP Mail SMTP

WP Mail SMTP est un plugin gratuit qui remplace le transport d’e-mails de WordPress. Les autres plugins SMTP, comme FluentSMTP ou Post SMTP, utilisent les mêmes paramètres avec des libellés légèrement différents.

  1. Installez le plugin. Dans WordPress, accédez à Plugins > Add New, recherchez WP Mail SMTP, puis installez-le et activez-le. Ignorez l’assistant de configuration s’il s’ouvre : vous pouvez tout configurer sur la page des paramètres.

  2. Définissez l’expéditeur. Ouvrez les paramètres du plugin. Définissez From Email sur une adresse de votre domaine vérifié et activez Force From Email, pour que tous les plugins envoient depuis cette adresse. Définissez From Name sur le nom de votre site ou de votre entreprise.

  3. Choisissez Other SMTP. Sous Mailer, choisissez Other SMTP.

  4. Saisissez le serveur. Définissez SMTP Host sur smtp.emailit.com, Encryption sur TLS et SMTP Port sur 587. Laissez Auto TLS activé.

  5. Saisissez les identifiants. Activez Authentication. Définissez SMTP Username sur emailit et SMTP Password sur votre clé API. Enregistrez les paramètres.

  6. Envoyez un test. Utilisez l’outil Email Test du plugin pour envoyer un message à votre propre adresse. Il apparaît dans Email APIEmails en quelques secondes.

Garder la clé hors de la base de données

WP Mail SMTP peut lire ses paramètres depuis des constantes : la clé API se trouve alors dans wp-config.php plutôt que dans la base de données. Ajoutez ces lignes au-dessus de /* That's all, stop editing! */ :

wp-config.php
define( 'WPMS_ON', true );
define( 'WPMS_MAILER', 'smtp' );
define( 'WPMS_SMTP_HOST', 'smtp.emailit.com' );
define( 'WPMS_SMTP_PORT', 587 );
define( 'WPMS_SSL', 'tls' );
define( 'WPMS_SMTP_AUTH', true );
define( 'WPMS_SMTP_AUTOTLS', true );
define( 'WPMS_SMTP_USER', 'emailit' );
define( 'WPMS_SMTP_PASS', 'secret_••••••••••••••••••••••••••••••••' );
define( 'WPMS_MAIL_FROM', 'hello@acme.com' );
define( 'WPMS_MAIL_FROM_FORCE', true );
define( 'WPMS_MAIL_FROM_NAME', 'Acme' );

La page des paramètres affiche alors ces valeurs comme verrouillées. Consultez la documentation du plugin si un champ ne prend pas en compte sa constante.

Configurer sans plugin

Si vous préférez ne pas installer de plugin, ajoutez un plugin must-use qui configure le PHPMailer intégré de WordPress. Définissez la clé dans wp-config.php :

wp-config.php
define( 'EMAILIT_API_KEY', 'secret_••••••••••••••••••••••••••••••••' );

Créez ensuite ce fichier :

wp-content/mu-plugins/emailit-smtp.php
<?php
/**
 * Plugin Name: Emailit SMTP
 * Description: Sends all WordPress email through the Emailit SMTP relay.
 */

add_action( 'phpmailer_init', function ( $phpmailer ) {
    $phpmailer->isSMTP();
    $phpmailer->Host       = 'smtp.emailit.com';
    $phpmailer->Port       = 587;
    $phpmailer->SMTPSecure = 'tls';
    $phpmailer->SMTPAuth   = true;
    $phpmailer->Username   = 'emailit';
    $phpmailer->Password   = EMAILIT_API_KEY;
} );

add_filter( 'wp_mail_from', fn () => 'hello@acme.com' );
add_filter( 'wp_mail_from_name', fn () => 'Acme' );

Les fichiers de mu-plugins se chargent automatiquement et ne peuvent pas être désactivés depuis l’écran d’administration.

Recevoir des webhooks

La plupart des sites n’ont pas besoin de webhooks. Si vous voulez réagir aux rebonds ou aux plaintes, par exemple pour signaler l’adresse d’un client WooCommerce, enregistrez une route REST et vérifiez la signature. Enregistrez le secret de signature du webhook dans wp-config.php sous le nom EMAILIT_WEBHOOK_SECRET :

wp-content/mu-plugins/emailit-webhooks.php
<?php
add_action( 'rest_api_init', function () {
    register_rest_route( 'emailit/v1', '/webhook', [
        'methods'             => 'POST',
        'permission_callback' => '__return_true',
        'callback'            => function ( WP_REST_Request $request ) {
            $payload   = $request->get_body();
            $timestamp = (string) $request->get_header( 'x-emailit-timestamp' );
            $signature = (string) $request->get_header( 'x-emailit-signature' );
            $expected  = hash_hmac( 'sha256', $timestamp . '.' . $payload, EMAILIT_WEBHOOK_SECRET );

            if ( abs( time() - (int) $timestamp ) > 300 || ! hash_equals( $expected, $signature ) ) {
                return new WP_Error( 'invalid_signature', 'Invalid signature', [ 'status' => 401 ] );
            }

            foreach ( json_decode( $payload, true ) as $event ) {
                if ( 'email.bounced' === $event['type'] ) {
                    // Flag $event['data']['object']['to'].
                }
            }

            return new WP_REST_Response( null, 200 );
        },
    ] );
} );

Faites pointer le webhook vers https://acme.com/wp-json/emailit/v1/webhook. C’est la vérification de la signature qui protège la route : ne la supprimez pas.

Conseils pour la production

  • Forcez l’adresse d’expéditeur. Les plugins WooCommerce, de formulaire de contact et d’adhésion définissent souvent leur propre expéditeur. Forcer une adresse d’expéditeur sur votre domaine vérifié évite les erreurs 530 From/Sender domain is not verified.
  • Consultez les logs en cas d’échec. Email APILogs affiche chaque connexion SMTP et chaque message avec son code de statut, filtrés par clé API.
  • Surveillez vos limites. Par défaut, les nouveaux espaces de travail peuvent envoyer 2 e-mails par seconde et 5 000 par jour. Une grosse vente WooCommerce ou un plugin de newsletter peut atteindre ces limites ; pour les relever, consultez Limites.
  • N’envoyez pas de newsletters via wp_mail. Pour les e-mails marketing envoyés à une liste, utilisez les campagnes, qui gèrent pour vous les liens de désinscription et les listes de contacts.

Dépannage

Symptôme Cause Solution
535 Authentication failed Le mot de passe n’est pas une clé API valide. Collez la clé complète, avec secret_, et utilisez emailit comme nom d’utilisateur.
530 From/Sender domain is not verified for this workspace L’adresse d’expéditeur n’appartient pas à un domaine vérifié. Définissez et forcez une adresse d’expéditeur sur votre domaine vérifié.
530 API key is restricted to sending domain La clé est limitée à un autre domaine. Utilisez une adresse d’expéditeur du domaine de la clé, ou une autre clé.
Délai de connexion dépassé Votre hébergeur bloque le port. Essayez le port 2525 ou 2587 avec TLS, ou demandez à votre hébergeur d’autoriser le SMTP sortant.
550 Unverified workspaces can only send to workspace members' account emails L’espace de travail n’a pas encore l’accès production. Demandez l’accès production.

Pour en savoir plus, consultez Dépannage SMTP.

Étapes suivantes

Ports, TLS et identifiants.
Évitez que vos e-mails arrivent dans les spams.
La signification de chaque statut de la liste des e-mails.
Portées, limitation à un domaine et rotation.

Cette page vous a-t-elle été utile ?

Merci pour votre retour.

Merci, nous lisons chaque message.