Рубрики
Wordpress

Как изменить имя и адрес отправителя WordPress

При различных событиях в система отправляет письма пользователям и администратору сайта и подставляет стандартные имя и WordPress. Это могут быть письма отправляемые при регистрации, восстановлении пароля, регистрации нового пользователя, нового блога(при включенном режиме multisite) и все письма отправляются с адреса по умолчанию WordPress <wordpress@mysite.ru>, где mysite.ru – это домен Вашего сайта. Есть множество случаев, когда это не приемлемо. Например, если сайт является корпоративным сайтом компании и необходимо, чтобы вся корреспонденция исходила от действующего адреса компании, например info@company.ru.

Для того, чтобы отправлять письма от более приемлемого для Вас имени и адреса необходимо перехватить эти данные и изменить их, либо подставить свои вместо них. Делается это с помощью стандартных фильтров WordPress: wp_mail_from и wp_mail_from_name. Первый позволит изменить адрес отправителя WordPress, второй его имя.

При фильтрации данных входным параметром является имя или адрес отправителя WordPress, заданные до того, как сработал наш . Эти данные использовать не обязательно, просто надо знать, что они есть. Их можно поместить в какую-либо переменную, например в $old.

Следующий можно вставить в файл function.php, расположенный в активной теме вашего сайта.

PHP код, изменяющий имя и адрес отправителя WordPress:

add_filter('wp_mail_from', 'new_mail_from'); // замена адреса с которого пользователям приходят письма
add_filter('wp_mail_from_name', 'new_mail_from_name'); // замена имени отправителя(по умолчанию WordPress)

function new_mail_from( $old ) 
{
	return 'new_sender@mysite.ru';
}
function new_mail_from_name( $old )
{
	return 'My site';
}

Стоит заметить, что этот способ так же работает для мультисайта.

Для того, чтобы изменять имя и адрес отправителя WordPress было удобнее, можно создать страницу настроек, на которой сделать соответствующие поля. В этом случае в функциях замены стандартных данных необходимо будет делать проверку – введены ли данные в соответствующие поля, и если поля пустые, то указывать стандартные имя и адрес отправителя, чтобы письма не приходили с пустым полем в графе “отправитель”.

Если Вас интересует как сделать страницу настроек – сообщите об этом в комментариях. Если наберется 10 желающих, то сделаю подробное описание.