使用WordPress身份验证cookie对用户进行身份验证。

原型

wp_authenticate_cookie( WP_User|WP_Error|null $user, string $username, string $password )

参数

$user (WP_User|WP_Error|null) (Required) 来自先前回调的WP_User或WP_Error对象。默认为null。

$username (string) (Required) 用户名。如果不为空,则取消cookie身份验证。

$password (string) (Required) 密码。如果不为空,则取消cookie身份验证。

返回值

(WP_User|WP_Error)  

源文件

路径:wp-includes/user.php

<?php
...
function wp_authenticate_cookie($user, $username, $password) {
	if ( $user instanceof WP_User ) {
		return $user;
	}
	if ( empty($username) && empty($password) ) {
		$user_id = wp_validate_auth_cookie();
		if ( $user_id )
			return new WP_User($user_id);
		global $auth_secure_cookie;
		if ( $auth_secure_cookie )
			$auth_cookie = SECURE_AUTH_COOKIE;
		else
			$auth_cookie = AUTH_COOKIE;
		if ( !empty($_COOKIE[$auth_cookie]) )
			return new WP_Error('expired_session', __('Please log in again.'));
		// If the cookie is not set, be silent.
	}
	return $user;
}
...
?>

其他

英文文档:https://developer.wordpress.org/reference/functions/wp_authenticate_cookie/