do_action( 'wp_mail_failed', WP_Error $error )

Fires after a PHPMailer\PHPMailer\Exception is caught.


$error WP_Error
A WP_Error object with the PHPMailerPHPMailerException message, and an array containing the mail recipient, subject, message, headers, and attachments.

Top ↑


File: wp-includes/pluggable.php. View all references

do_action( 'wp_mail_failed', new WP_Error( 'wp_mail_failed', $e->getMessage(), $mail_data ) );

Top ↑


Version Description
4.4.0 Introduced.

Top ↑

User Contributed Notes

  1. Skip to note 1 content

    Debugging wp_mail() can be a lot easier with this simple method.
    It will display a more helpful error message (the original phpmailer error) than Wordpress will by default.
    Just add this function to display the real wp_mail() error.
    But only use this for debugging.

    // show wp_mail() errors
    add_action( 'wp_mail_failed', 'onMailError', 10, 1 );
    function onMailError( $wp_error ) {
    	echo "<pre>";
        echo "</pre>";

You must log in before being able to contribute a note or feedback.