Я хочу отключить уведомление по электронной почте, если пользователь или администратор изменяет пароль пользователя.
После некоторого Googleling я пришел к выводу, что мне нужно создать плагин и переписать wp_password_change_notification
функцию, найденную в pluggable.php
.
Это плагин и функция:
<?php
/*
Plugin Name: Stop email change password
Description: Whatever
*/
if ( !function_exists( 'wp_password_change_notification' ) ) {
function wp_password_change_notification() {}
}
?>
Я загрузил файл в папку с плагинами и активировал его в своей панели администратора!
Это должно быть сделано с помощью плагина, потому что pluggable.php
файл загружается перед functions.php
файлом.
Во всяком случае, это не похоже на работу для меня .......
Пользователь по-прежнему получает электронное письмо.
Я набрал все плагины и запустил плагин на чистой установке, так что никаких помех
Также WP_DEBUG
не показывает ошибок !!!
Может кто-нибудь сказать мне, что изменить или как это исправить любым другим способом (кроме основных изменений :-))
М.
Ответы:
Чтобы отключить уведомление по электронной почте, добавьте это в плагин или тему:
FYI
wp_password_change_notification()
контролирует уведомление по электронной почте администратора, когда пользователь меняет свой парольисточник
Чтобы отключить уведомление электронной почты администратора, когда пользователь сбрасывает свой собственный пароль , создайте плагин (или должен использовать плагин ), используя следующий фрагмент кода:
Это предотвратит отправку следующего электронного письма на электронную почту администратора в меню «Настройки»> «Основные»:
Подавление этого уведомления по электронной почте должно быть обработано с помощью плагина, потому что
pluggable.php
загружается раньше, чемfunctions.php
файл темы .Если вы хотите вместо этого отключить уведомление по электронной почте о том, что пользователь успешно изменил свой пароль , используйте следующий фильтр
functions.php
:Это подавит отправку следующего электронного письма:
источник
wp_update_user()
вwp-includes/user.php
: core.trac.wordpress.org/browser/tags/4.9.5/src/wp-include/…WordPress отправляет уведомление по умолчанию, когда пользователь обновляется
wp_update_user()
.Попытка перезаписать это с помощью фильтров, модификации
pluggable.php
или перезаписи с помощью пустой функции не работает.Вместо этого используйте,
wp_set_password( $password, $user_id )
когда вы не хотите, чтобы электронное письмо с уведомлением было запущено для пользователей / администраторов при сбросе пароля.источник
Скопируйте следующий код и сохраните как disable_email.php. Затем поместите этот файл в каталог «wp-content / plugins /». И активным из панели администратора.
источник
Другие ответы неверны, потому что те отключают отправку электронной почты при изменении электронной почты, а не при изменении пароля.
Добавление приведенного ниже кода в файл functions.php под вашей активной темой (или, альтернативно, в плагине) должно работать. Работал у меня для версии 4.6.1
Смотрите официальную документацию
источник
Используйте функцию wp_set_password () вместо wp_update_user () для обновления пароля, поскольку это не вызовет уведомление по электронной почте.
источник