функция since 2.5.0

wp_set_password()

Проверено на WordPress 6.9, обновлено Источник: WordPress Developer Resources.

Сигнатура

wp_set_password( string $password, int $user_id )

Описание

Для интеграции с другими приложениями эту функцию можно переопределить, чтобы использовать алгоритм проверки паролей из другого пакета.
Обратите внимание: эту функцию следует применять экономно, она действительно предназначена только для однократного использования. Неправильное её использование в плагине или теме может привести к бесконечному циклу сбросов пароля, если не принять меры, гарантирующие, что она не выполняется при каждой загрузке страницы.

Оригинал (английский)

For integration with other applications, this function can be overwritten to instead use the other package password checking algorithm.

Please note: This function should be used sparingly and is really only meant for single-time application. Leveraging this improperly in a plugin or theme could result in an endless loop of password resets if precautions are not taken to ensure it does not execute on every page load.

Параметры

$password string обязательный
Новый пароль пользователя в виде открытого текста.
$user_id int обязательный
ID пользователя.

Исходный код

wp-includes/pluggable.php:3099

function wp_set_password(
	#[\SensitiveParameter]
	$password,
	$user_id
) {
	global $wpdb;

	$old_user_data = get_userdata( $user_id );

	$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 );

	/**
	 * Fires after the user password is set.
	 *
	 * @since 6.2.0
	 * @since 6.7.0 The `$old_user_data` parameter was added.
	 *
	 * @param string  $password      The plaintext password just set.
	 * @param int     $user_id       The ID of the user whose password was just set.
	 * @param WP_User $old_user_data Object containing user's data prior to update.
	 */
	do_action( 'wp_set_password', $password, $user_id, $old_user_data );
}

История изменений

ВерсияОписание
6.8.0 The password is now hashed using bcrypt by default instead of phpass.
2.5.0 Introduced.

Что будем искать? Например,Продвижение

Этот сайт использует куки-файлы. Оставаясь на сайте, Вы соглашаетесь на их использование. Для получения дополнительной информации, пожалуйста, ознакомьтесь с политикой в отношении персональных данных.