wp_new_user_notification_email
Позволяет изменить содержимое письма, отправляемое новому пользователю при регистрации.
Использование
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').
Примеры
#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_email
wp-includes/pluggable.php 2296
$wp_new_user_notification_email = apply_filters( 'wp_new_user_notification_email', $wp_new_user_notification_email, $user, $blogname );