$name = $name ? $name : trim(CRM_Utils_Array::value('name', $_REQUEST));
$pass = $pass ? $pass : trim(CRM_Utils_Array::value('pass', $_REQUEST));
if ($name) {
- $uid = wp_authenticate($name, $pass);
+ $uid = wp_authenticate($name, $pass); // this returns a WP_User object if successful
if (!$uid) {
if ($throwError) {
echo '<br />Sorry, unrecognized username or password.';
}
}
if ($uid) {
- $account = wp_set_current_user($uid);
+ if ($uid instanceof WP_User) {
+ $account = wp_set_current_user($uid->ID);
+ } else {
+ $account = wp_set_current_user($uid);
+ }
if ($account && $account->data->ID) {
global $user;
$user = $account;