it-swarm.com.de

Kann ich WordPress so konfigurieren, dass Postfix ohne Plugin verwendet wird?

Ich entwickle eine WordPress-Site auf einer Vagrant-Box und habe Postfix installiert, um E-Mail-Benachrichtigungen zu testen.

Auf diesem Gastbetriebssystem (Ubuntu) kann ich eine Test-E-Mail beenden:

echo "Test mail from postfix" | mail -s "Test Postfix" [email protected]

Dies funktioniert und ich erhalte die E-Mail. Soweit ich weiß, verwendet Postfix die Sendmail-Binärdatei und ich würde erwarten, dass WordPress E-Mails erfolgreich versendet.

Meine Kontaktformularbenachrichtigungen gehen jedoch nicht ein. Gibt es eine Möglichkeit, das Senden von E-Mails in WordPress zu überprüfen/zu debuggen oder zu überprüfen, welche E-Mail-Funktion verwendet wird?

UPDATE

Nach einigem Graben stellte ich fest, dass wp_mail() PHPMailer verwendet. Wenn ich die Funktion wp_mail() mit diesem Testskript debugge, wird in PHPMailer eine Ausnahme ausgelöst:

Mail-Funktion konnte nicht instanziiert werden.

// Set $to as the email you want to send the test to
$to = "[email protected]";

// No need to make changes below this line

// Email subject and body text
$subject = 'wp_mail function test';
$message = 'This is a test of the wp_mail function: wp_mail is working';
$headers[] = 'From: Me Myself <[email protected]>';

// Load WP components, no themes
define('WP_USE_THEMES', false);
require('wp/wp-load.php');

// Call the wp_mail function, display message based on the result.
if( wp_mail( $to, $subject, $message, $headers ) ) {
    // the message was sent...
    echo 'The test message was sent. Check your email inbox.';
} else {
    // the message was not sent...
    echo 'The message was not sent!';
};
2
codecowboy

WordPress verwendet die Funktion wp_mail () , um E-Mails zu senden. In dem dortigen Codex-Artikel heißt es:

Damit diese Funktion funktioniert, müssen die Einstellungen SMTP und smtp_port (Standard: 25) in Ihrer php.ini-Datei festgelegt werden.

Stellen Sie außerdem sicher, dass Ihr Kontaktformular die erforderlichen Parameter an die Funktion wp_mail () sendet. Die erforderlichen Parameter finden Sie auf der Seite im obigen Link.

1
Austin Curtis