Изменение имени и email отправителя почты с сайта на WordPress

Для начала сравним функции mail() и wp_mail(). Первая — это обычная PHP-функция, использующаяся для отправки e-mail с сайта, вторая используется с этой же целью в WordPress.

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

Как видите, отличие в одном-единственном аргументе. И что же это такое — headers? Ну например:

$headers  = "Content-type: text/html; charset=utf-8 \r\n"; 
$headers .= "From: truemisha.ru <no-reply@truemisha.ru>\r\n";

В WordPress же в качестве имени отправителя по умолчанию пишется WordPress, а в качестве e-mail wordpress@ваш_сайт.ru

Давайте это исправим и начнём с имени:

function change_name($name) {
	return 'truemisha.ru';
}
 
add_filter('wp_mail_from_name','change_name');

Код нужно вставлять в functions.php, теперь заменим e-mail:

function change_email($email) {
	return 'no-reply@truemisha.ru';
}
 
add_filter('wp_mail_from','change_email');

Смотрите также