Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Change User Password
- function change_user_password($currentPass, $newPass1, $newPass2) {
- require ( ABSPATH . WPINC . '/registration.php' );
- global $uriData;
- $uriData->author = wp_get_current_user();
- $oldPass = $uriData->author->user_pass;
- //Strip any tags then may have been put into the array
- $currentPass_stripped = strip_tags($currentPass);
- $newPass1_stripped = strip_tags($newPass1);
- $newPass2_stripped = strip_tags($newPass2);
- // Validate the Form Data
- if (isEmptyString($currentPass_stripped)) return new WP_Error('no_old_password_entered','Enter your Current Password');
- if (isEmptyString($newPass1_stripped)) return new WP_Error('no_new_password_entered','Enter a new Password');
- if (isEmptyString($newPass2_stripped)) return new WP_Error('no_new_password_confirm_entered','Confirm your new Password');
- if ($newPass1_stripped != $newPass2_stripped) return new WP_Error('new_pass_no_match','New Password and Confirm Password must be the same');
- if (!wp_check_password($currentPass_stripped, $oldPass)) return new WP_Error('current_pass_incorrect','Current Password is Incorrect');
- // Change User's Password
- wp_update_user( array(
- 'ID' => $uriData->author->ID,
- 'user_pass' => $newPass1_stripped
- )
- );
- // Update the Password Cookie
- $cookie_info = wp_get_cookie_login();
- $login = $cookie_info['login'];
- wp_clearcookie();
- wp_setcookie($uriData->author->user_login, $newPass1);
- $user = wp_get_current_user();
- // Add a flag for Messaging the user that they have successfully changed their password
- update_usermeta($user->ID, 'changed_password_my_account', 'yes');
- // Redirect the User to My Account
- return $message = 'You have successfully changed your password' ;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement