WordPress SMTP-Mailversand ohne Plugin konfigurieren

WordPress verschickt im alltäglichen Betrieb einige Mails. Benachrichtigung über neue Formular-Einträge, über neue Kommentare oder auch Informationen zu ausstehenden Updates.

Um WordPress diese Mails via SMTP versenden zu lassen stehen unzählige Plugins zur Verfügung. Allerdings kann man den Versand via SMTP auch mit ein paar Zeilen Code ohne separatem Plugin konfigurieren. Dazu einfach folgenden Code einfügen und entsprechend anpassen:

function configure_smtp($phpmailer)
{
    $phpmailer->isSMTP();
    $phpmailer->Host = "my_smtp_host"; // Hostname des Mailservers
    $phpmailer->SMTPAuth = true; // SMTP-Authentifizierung verwenden (true oder false)
    $phpmailer->Port = 587; // SMTP-Portnummer - gängige Ports sind 25, 465 oder 587
    $phpmailer->Username = "my_username"; // Benutzername für die SMTP-Authentifizierung
    $phpmailer->Password = "my_password"; // Passwort für die SMTP-Authentifizierung
    $phpmailer->SMTPSecure = "tls"; // Zu verwendendes Verschlüsselungssystem: ssl oder tls
    $phpmailer->From = "sender_address"; // Absender E-Mailadresse
    $phpmailer->FromName = "sender_address_name"; // Absender Name
}

add_action("phpmailer_init", "configure_smtp");

Anschließend versendet WordPress die Mails über die konfigurierte SMTP-Verbindung.

Konfiguration über wp-config.php

Alternativ kann man die Konfiguration auch über die wp-config.php durchführen, indem die verschiedenen Werte in Konstanten ausgelagert werden. Der oben genannte Code muss dazu wie folgt angepasst werden:

add_action("phpmailer_init", "configure_smtp");
function configure_smtp($phpmailer)
{
    $phpmailer->isSMTP();
    $phpmailer->Host = SMTP_HOST;
    $phpmailer->SMTPAuth = SMTP_AUTH;
    $phpmailer->Port = SMTP_PORT;
    $phpmailer->Username = SMTP_USER;
    $phpmailer->Password = SMTP_PASS;
    $phpmailer->SMTPSecure = SMTP_SECURE;
    $phpmailer->From = SMTP_FROM;
    $phpmailer->FromName = SMTP_NAME;
}

Anschließend können folgende die nachfolgenden Konstanten über die wp-config.php gesetzt werden:

define("SMTP_USER", "my_user@example.com"); // Benutzername für die SMTP-Authentifizierung
define("SMTP_PASS", "my_password"); // Passwort für die SMTP-Authentifizierung
define("SMTP_HOST", "smtp.example.com"); // Hostname des Mailservers
define("SMTP_FROM", "no-reply@example.com"); // Absender E-Mailadresse
define("SMTP_NAME", "My Sender Name"); // Absender Name
define("SMTP_PORT", 587); // SMTP-Portnummer - gängige Ports sind 25, 465 oder 587
define("SMTP_SECURE", "tls"); // Zu verwendendes Verschlüsselungssystem: ssl oder tls
define("SMTP_AUTH", true); // SMTP-Authentifizierung verwenden (true oder false)
define("SMTP_DEBUG", 0); // nur für Debugging-Zwecke auf 1 oder 2 setzen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.