public static function login($username, $password, $remember = true) { $credentials = array(); $credentials['user_login'] = $username; $credentials['user_password'] = $password; $credentials['remember'] = $remember; $user = wp_signon($credentials, false); if (is_wp_error($user)) { if (SB_PHP::is_email_valid($username)) { $new_user = self::get_by('email', $username); if (self::compare_user_password($new_user, $password)) { $credentials['user_login'] = $new_user->user_login; $credentials['user_password'] = $password; $credentials['remember'] = $remember; $user = wp_signon($credentials, false); } } } return $user; }