wp_mail_succeededхук-событиеWP 5.9.0

Позволяет сделать что-либо, после того как письмо отправлено (PHPMailer отправил email).

Выполнение этого событие не означает, что получатель успешно получил письмо. Оно означает только то, что метод PHPMailer::send, смог обработать запрос без ошибок.

Использование

add_action( 'wp_mail_succeeded', 'action_function_name_4117' );
function action_function_name_4117( $mail_data ){
	// Делаем что-либо...
}
$mail_data(массив)
Данные письма в виде массива. Содержит: тему, сообщение, заголовки и вложения.

Примеры

0

#1 Какие данные получает хук

// Отправим письмо
$to          = 'test@test.com';
$subject     = 'Тема сообщения';
$message     = 'Контент письма';
$headers     = [
	'From: Me Myself <me@example.net>',
	'content-type: text/html',
	'cc: John Q Codex <jqc@wordpress.org>',
	'cc: John2 Codex <j2qc@wordpress.org>',
	'bcc: iluvwp@wordpress.org',
];
$attachments = [];

wp_mail( $to, $subject, $message, $headers, $attachments );

Посмотрим, какие данные получит хук:

add_action( 'wp_mail_succeeded', function ( $mail_data ) {
	print_r( $mail_data );
} );

/*
Array
(
	[to] => Array
		(
			[0] => test@test.com
		)

	[subject] => Тема сообщения
	[message] => Контент письма
	[headers] => Array
		(
		)

	[attachments] => Array
		(
		)

)
*/

Как видим, headers пустые (обнуляются по "пути").

Список изменений

С версии 5.9.0 Введена.

Где вызывается хук

wp_mail()
wp_mail_succeeded
wp-includes/pluggable.php 557
do_action( 'wp_mail_succeeded', $mail_data );

Где используется хук в WordPress

Использование не найдено.