function hocwp_setup_theme_authenticate($user, $username) { global $wp_version; if (version_compare($wp_version, '4.5', '<')) { if (hocwp_allow_user_login_with_email() && is_email($username) && email_exists($username)) { $user = get_user_by('email', $username); } } return $user; }
function hocwp_user_login($username, $password, $remember = true) { $credentials = array(); $credentials['user_login'] = $username; $credentials['user_password'] = $password; $credentials['remember'] = $remember; $user = wp_signon($credentials, false); if (hocwp_allow_user_login_with_email() && !is_a($user, 'WP_User')) { if (is_email($username) && email_exists($username)) { $new_user = get_user_by('email', $username); if (hocwp_check_user_password($password, $new_user)) { $user = $new_user; hocwp_user_force_login($new_user->ID); } } } return $user; }