wp_set_password()
Змінює пароль користувача. Оновлює вказаний пароль у БД і скидає кеш користувача.
Це init .
Заміна функції (перевизначення) — у плагіні можна створити функцію з такою самою назвою, тоді вона замінить поточну функцію.
Працює на основі:
wp_hash_password()
wp_hash_password()
Хуків немає.
Повертає
null
. Нічого. null
Використання
wp_set_password($password, $user_id);
-
$password
(рядок) (обов’язковий) - новий пароль, який потрібно встановити. Вказується текстом.
-
$user_id
(число) (обов’язковий) - ID користувача, для якого потрібно встановити вказаний пароль.
Приклади
#1 Змінимо пароль користувача програмно
Мається на увазі, що цей код викликається з функції, яка повинна змінити пароль.
$new_pass = trim(wp_unslash( $_POST['new_pass'] ) ); $user_id = 1; wp_set_password ($ new_pass, $ user_id);
#2 Приклад зміни (скидання) пароля через PHP
Вставте наступний код у файл теми functions.php , а потім, щоб активувати функцію, зайдіть на будь-яку сторінку сайту і допишіть в URL ?init_new_pass_set=mylogin
. У результаті пароль користувача mylogin
буде змінено на resetpass
. Після цього код можна видалити.
if( isset( $_GET['init_new_pass_set'] ) ){ add_action( 'init', function (){ $user = get_user_by( 'login', $_GET['init_new_pass_set'] ); wp_set_password( 'resetpass', $user->ID ); } ); }
нотатки
- Global. wpdb. $wpdb WordPress database abstraction object.
список змін
З версії 2.5.0 | Введено. |
Код wp_set_password() wp set password WP 6.0.2
function wp_set_password( $password, $user_id ) { Global $wpdb; $ hash = wp_hash_password ($ password); $wpdb->update( $wpdb->users, array( 'user_pass' => $hash, 'user_activation_key' => '', ), array( 'ID' => $user_id ) ); clean_user_cache($user_id); }