Intereting Posts
Если одна таксономия содержит тот же термин, что и другой, то отображается сообщение Стиль встречного контура Как перенаправить посетителя на собственный URL-адрес с помощью PHP-кода в functions.php Как отобразить некоторые настройки для пользователя супер администратора только с помощью API настроек Не удается отправить почту WordPress с помощью аутентификации SMTP Дезинфекция данных: передовая практика с примерами кода проблема изменения размера окна Хостинг WordPress на AWS EC2 с использованием CloudFront Dynamic Content Origins для содержимого страницы Facebook Share Thumbnail Категоризация результатов поиска на основе пользовательских полей Использование сообщений с различными типами и категориями сообщений? Блог WordPress, отображающий пустые страницы Использование пользовательской meta_query с отношением не работает как ожидалось meta_value_num не заказывает все предметы Как переопределить вызов функции в functions.php?

Hook * после изменения пароля пользователя?

Я знаю, что hook_reset перехватывает:

Runs after the user submits a new password during password reset but before the new password is actually set. 

но есть аналогичный крюк ПОСЛЕ того, как новый пароль действительно установлен?

EDIT: Было бы логично использовать profile_update, но я попытался, и profile_update, похоже, не вызван в случае смены пароля для процедуры «потерянного пароля», например. Моя реальная проблема заключается в автоматическом входе в систему после сброса пароля, и единственным решением, которое было найдено до сих пор, было использование hook_reset hook, вызывающего вручную wp_set_password перед выполнением моего кода, поэтому, чтобы быть уверенным, что пароль изменен и THEN мой код будет выполнен. Это не чистая процедура, и мне интересно, есть ли решение, которое менее «взломано» … Я много искал, глядя на каждый крючок действия в wordpress doc, но я не могу найти правильное решение.

Solutions Collecting From Web of "Hook * после изменения пароля пользователя?"

Интересно, ищете ли вы это :

  /** * Fires after the user's password is reset. * * @since 4.4.0 * * @param object $user The user. * @param string $new_pass New user password. */ do_action( 'after_password_reset', $user, $new_pass ); 

Он был введен в WordPress 4.4 и живет в функции reset_password() . Крючок after_password_reset запускается после wp_set_password() .

Обновить

Вот непродуманная идея 4.4:

 /** * Support for the 'after_password_reset' hook in WordPress pre 4.4 */ add_action( 'password_reset', function( $user, $new_pass ) { add_filter( 'pre_option_admin_email', function( $pre_option, $option ) use ( $user, $new_pass ) { // Setup our 'after_password_reset' hook if( ! did_action( 'after_password_reset' ) ) do_action( 'after_password_reset', $user, $new_pass ); return $pre_option; } 10, 2 ); }, 10, 2 ); 

где теперь у вас должен быть собственный пользовательский after_password_reset .

Не забудьте выполнить резервное копирование базы данных перед тестированием.

Кажется, что вам нужно использовать profile_update .

Здесь есть аналогичный вопрос, и здесь .

Таким образом, этот пост можно считать дублированным.