wp_new_user_notification_emailхук-фильтрWP 4.9.0

Позволяет изменить содержимое письма, отправляемое новому пользователю при регистрации.

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

add_filter( 'wp_new_user_notification_email', 'wp_kama_new_user_notification_email_filter', 10, 3 );

/**
 * Function for `wp_new_user_notification_email` filter-hook.
 * 
 * @param array   $wp_new_user_notification_email Used to build wp_mail().
 * @param WP_User $user                           User object for new user.
 * @param string  $blogname                       The site title.
 *
 * @return array
 */
function wp_kama_new_user_notification_email_filter( $wp_new_user_notification_email, $user, $blogname ){

	// filter...
	return $wp_new_user_notification_email;
}
$wp_new_user_notification_email(массив)

Массив с данными, передаваемые функции wp_mail(), кроме вложений. Ключи массива:

  • to
    Email только что зарегистрированного пользователя.

  • subject
    Тема письма (заголовок).

  • message
    Тело письма (содержание, контент).

  • headers
    Заголовки письма, указывающие на его атрибуты.
$user(WP_User)
Объект WP_User нового пользователя.
$blogname(строка)
Название сайта, получаемое через get_option('blogname').

Примеры

0

#1 Изменим содержимое письма при регистрации пользователя

Пусть у нас есть собственная роль с именем price_list__subscriber, для которой открыт доступ к странице "Прайс-листов". Тогда при регистрации пользователя с такой ролью дефолтное письмо WordPress хорошо бы дополнить информацией об этом.

add_filter( 'wp_new_user_notification_email', 'hpl_user_notification_email', 10, 3 );

/**
 * Изменяет содержимое письма, отправляемое при регистрации нового пользователя с определённой ролью.
 *
 * @param array   $email_data
 * @param WP_User $user
 * @param string  $blogname
 *
 * @return array
 */
function hpl_user_notification_email( $email_data, $user, $blogname ) {
	if ( user_can( $user, 'price_list__subscriber' ) ) {
		$text = "Вам предоставлен доступ на страницу прайс-листов. \r\n\r\n";
		$text .= "Страница находится по адресу http://example.com/price-list/. \r\n\r\n";
		$text .= "Временный пароль для входа сгенерирован автоматически, установите свой собственный пароль по ссылке ниже. \r\n\r\n";

		$email_data['subject'] = 'Доступ к прайс-листу открыт - ' . wp_specialchars_decode( $blogname );
		$email_data['message'] = $text . $email_data['message'];
	}

	return $email_data;
}

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

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

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

wp_new_user_notification()
wp_new_user_notification_email
wp-includes/pluggable.php 2255
$wp_new_user_notification_email = apply_filters( 'wp_new_user_notification_email', $wp_new_user_notification_email, $user, $blogname );

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

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