WordPress at a glance
function is not described

wp_login() WP 1.2.2

Deprecated in 2.5.0. It is no longer supported and can be removed in future releases. Use wp_signon() instead.

Checks a users login information and logs them in if it checks out. This function is deprecated.

Use the global $error to get the reason why the login failed. If the username is blank, no error will be set, so assume blank username on that case.

Plugins extending this function should also provide the global $error and set what the error is, so that those checking the global for why there was a failure can utilize it later.

  • See: wp_signon()
  • Global. String. $error Error when false is returned

No Hooks.


true/false. False on login failure, true on successful check


wp_login( $username, $password, $deprecated );
$username(string) (required)
User's username
$password(string) (required)
User's password
Not used
Default: ''

Code of wp login: wp-includes/pluggable-deprecated.php WP 5.2.2

function wp_login($username, $password, $deprecated = '') {
	_deprecated_function( __FUNCTION__, '2.5.0', 'wp_signon()' );
	global $error;

	$user = wp_authenticate($username, $password);

	if ( ! is_wp_error($user) )
		return true;

	$error = $user->get_error_message();
	return false;