WordPress versendet E-Mails standardmäßig über die PHP-Funktion mail(), die das lokale sendmail-Programm des Webservers nutzt. Diese Methode hat eine Zustellrate von 60 bis 80 Prozent, weil die Nachrichten ohne SPF-, DKIM- und DMARC-Signaturen verschickt werden, oft von gemeinsam genutzten IP-Adressen mit schlechter Reputation kommen und von Gmail, Outlook und Apple Mail als Spam markiert werden. Wer SMTP (Simple Mail Transfer Protocol) konfiguriert, leitet WordPress-Mails über einen authentifizierten Mailserver wie Gmail, Microsoft 365, einen eigenen SMTP-Relay oder einen Transaktions-Anbieter wie SendGrid, Mailgun, Amazon SES, Postmark oder Brevo. Damit steigt die Zustellrate auf über 99 Prozent. Zusätzlich gibt es Bounce-Tracking, Öffnungsraten und ein klares Protokoll jeder versandten Nachricht.
Warum braucht WordPress SMTP statt PHP mail()?
- Authentifizierung: SMTP-Server verlangen Benutzername und Passwort, der Absender ist verifiziert.
mail()versendet ohne Authentifizierung. - SPF und DKIM: ein Transaktions-Anbieter signiert ausgehende Mails mit DKIM und ist im SPF-Record gelistet. Ohne diese Signaturen weist Gmail seit Februar 2024 viele Mails ab.
- Reputation: gemeinsam genutzte Webserver-IPs stehen oft auf Sperrlisten wie Spamhaus oder Barracuda. Transaktions-Anbieter pflegen saubere dedizierte IP-Pools.
- Logging: SMTP-Plugins führen ein Protokoll jeder versandten Mail, sodass sichtbar ist, ob Passwort-Resets, WooCommerce-Bestellbestätigungen oder Kontaktformulareinträge auch wirklich rausgegangen sind.
- TLS-Verschlüsselung: SMTP nutzt STARTTLS oder implizites TLS auf Port 465, Zugangsdaten und Inhalte werden während der Übertragung verschlüsselt.
Was ist der einfachste Weg, SMTP in WordPress einzurichten?
Das kostenlose Plugin WP Mail SMTP von WPForms (über 4 Millionen aktive Installationen, 4,9 Sterne bei mehr als 4.000 Bewertungen) installieren. Alternativen sind FluentSMTP (kostenlos, über 400.000 Installationen, mit Amazon-SES- und Sendinblue-Support), Easy WP SMTP (über 500.000 Installationen) und Post SMTP Mailer (über 400.000 Installationen, mit eingebautem E-Mail-Log und Gmail OAuth).
Welchen SMTP-Anbieter sollte ich wählen?
| Anbieter | Kostenloses Kontingent | Geeignet für |
|---|---|---|
| Brevo (Sendinblue) | 300 E-Mails/Tag | Kleine Seiten, Newsletter |
| SendGrid | 100 E-Mails/Tag (Free Plan, 2025) | Entwickler, wachsende SaaS |
| Mailgun | 100 E-Mails/Tag in Flex-Testphase | Transaktional, API first |
| Amazon SES | 62.000/Monat aus EC2 | Hohes Volumen, billigste Skalierung |
| Postmark | 100 E-Mails/Monat | Nur transaktional, schnellste Zustellung |
| Microsoft 365 SMTP | Im M365-Plan enthalten | Business-Mail mit eigener Domain |
| Gmail SMTP | 500 Empfänger/Tag (free), 2000 (Workspace) | Kleinunternehmen, geringes Volumen |
Schritt für Schritt: WP Mail SMTP mit Brevo einrichten
- Bei
brevo.comregistrieren und die Absender-Domain durch Eintragen der DKIM- und Brevo-Code-TXT-Records im DNS verifizieren. - In Brevo unter SMTP und API » SMTP einen SMTP-Schlüssel erzeugen. Server (
smtp-relay.brevo.com), Port (587) und Login (Brevo-Konto-E-Mail) notieren. - In WordPress WP Mail SMTP installieren und aktivieren.
Einstellungen » WP Mail SMTP » Einstellungenöffnen.- Absender-E-Mail auf eine verifizierte Domainadresse wie
noreply@deinedomain.desetzen. Absender-E-Mail erzwingen aktivieren. - Absender-Name auf den Seitennamen setzen und Absender-Namen erzwingen aktivieren.
- Mailer Brevo auswählen (oder Other SMTP für manuelle Eingabe).
- SMTP-Host
smtp-relay.brevo.com, Port587, VerschlüsselungTLS, Authentifizierung ein, Benutzername und SMTP-Schlüssel als Passwort eintragen. - Einstellungen speichern klicken.
- Tab E-Mail-Test öffnen, eigene Adresse eintragen, Test versenden und im Posteingang prüfen.
Wie trage ich SPF, DKIM und DMARC ein?
Mail-Authentifizierung braucht drei DNS-Records, die der SMTP-Anbieter liefert:
# SPF (TXT Record auf deinedomain.de)
v=spf1 include:spf.brevo.com ~all
# DKIM (TXT Record auf mail._domainkey.deinedomain.de)
v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBi...
# DMARC (TXT Record auf _dmarc.deinedomain.de)
v=DMARC1; p=none; rua=mailto:dmarc@deinedomain.de; pct=100Mit DMARC-Policy p=none mindestens zwei Wochen überwachen, dann p=quarantine und am Ende p=reject. Seit Februar 2024 verlangen Gmail und Yahoo bei Bulk-Versendern (ab 5.000 Nachrichten pro Tag an ihre Domains) einen gültigen DMARC-Eintrag.
SMTP ohne Plugin via wp-config.php
Wer kein Plugin will, überschreibt wp_mail() mit der Aktion phpmailer_init. In der functions.php des Child-Themes oder einem kleinen mu-Plugin:
add_action('phpmailer_init', function ($phpmailer) {
$phpmailer->isSMTP();
$phpmailer->Host = 'smtp-relay.brevo.com';
$phpmailer->SMTPAuth = true;
$phpmailer->Port = 587;
$phpmailer->Username = 'dein-login@example.com';
$phpmailer->Password = defined('SMTP_PASS') ? SMTP_PASS : ';
$phpmailer->SMTPSecure = 'tls';
$phpmailer->From = 'noreply@example.com';
$phpmailer->FromName = 'Meine Seite';
});Passwort in wp-config.php ablegen:
define('SMTP_PASS', 'xxxxxxxxxxxxxxxx');Niemals Zugangsdaten ins Repository einchecken, nicht in öffentliche Pastebins oder GitHub Gists einfügen.
Gmail SMTP mit App-Passwort
- Zwei-Faktor-Authentifizierung im Google-Konto aktivieren.
myaccount.google.com/apppasswordsöffnen und ein App-Passwort mit Namen "WordPress" erstellen.- In WP Mail SMTP Other SMTP wählen, Host
smtp.gmail.com, Port587, TLS, Benutzername die volle Gmail-Adresse, Passwort das 16 Zeichen lange App-Passwort (Leerzeichen werden ignoriert). - Tageslimit bei kostenlosem Gmail 500 Empfänger, bei Workspace 2.000. Darüber drosselt oder sperrt Google das Konto.
Amazon SES (am günstigsten in größerem Volumen)
SES kostet 0,10 USD pro 1.000 E-Mails und ist die ersten 62.000 Nachrichten pro Monat aus einer EC2-Instanz heraus kostenlos. Einrichtung:
- AWS-Konto erstellen und in der SES-Konsole Production Access beantragen (im Sandbox-Modus werden nur verifizierte Adressen beliefert).
- Domain unter SES » Verified Identities verifizieren und die drei Easy-DKIM-CNAME-Records ins DNS eintragen.
- IAM-Benutzer mit Policy
AmazonSesSendingAccessanlegen und SMTP Credentials erzeugen (nicht die normalen AWS-Access-Keys). - In WP Mail SMTP Amazon SES auswählen, SMTP-Host wie
email-smtp.eu-central-1.amazonaws.com, Port587, TLS, IAM-SMTP-Username und Passwort eintragen.
SMTP-Fehler beheben
- Could not authenticate: falscher Benutzername, falsches Passwort oder 2FA aktiv ohne App-Passwort.
- Connection timed out: der Hoster sperrt ausgehende Ports 25, 465 oder 587. Support kontaktieren oder anderen Port nutzen. Viele Shared-Hoster (SiteGround, Bluehost) blockieren Port 25 komplett.
- SSL handshake failed: veraltetes PHP oder OpenSSL auf dem Server. Auf PHP 8.1 oder höher aktualisieren.
- Mails landen im Spam: fehlende DKIM, fehlende SPF, abweichende Absenderadresse oder noch nicht eingewärmte Versanddomain.
- Test-Mail kommt an, echte Mail nicht: ein anderes Plugin überschreibt
wp_mail(). Im WP Mail SMTP Log nachsehen.
Wie hilft InspectWP bei SMTP?
InspectWP analysiert die öffentlichen DNS-Records der Domain und meldet, ob SPF, DKIM und DMARC korrekt konfiguriert sind. Fehlende oder falsch ausgerichtete Einträge werden im Sicherheitsbereich markiert, damit Administratoren wissen, welche Records zu setzen sind, bevor die Zustellbarkeit leidet.