Skip to content

Instantly share code, notes, and snippets.

@jprieton
Last active August 29, 2015 14:01
Show Gist options
  • Save jprieton/72d89dc84a836ea1d924 to your computer and use it in GitHub Desktop.
Save jprieton/72d89dc84a836ea1d924 to your computer and use it in GitHub Desktop.
Cambio de contraseña con verificación de contraseña anterior en WordPress
<?php
function jpb_change_user_pass() {
$old_pass = filter_input(INPUT_POST, 'old_pass');
$new_pass = filter_input(INPUT_POST, 'new_pass');
$new_pass_verify = filter_input(INPUT_POST, 'new_pass_verify');
if (empty($old_pass) or empty($new_pass) or $new_pass != $new_pass_verify or !is_user_logged_in()) {
return;
}
global $current_user;
get_currentuserinfo();
if (empty($current_user)) {
return;
}
$creds = array();
$creds['user_login'] = $current_user->user_login;
$creds['user_password'] = $old_pass;
$user = wp_signon($creds, false);
if (is_wp_error($user)) {
// Do something if $old pass is incorrect
} else {
// Update pass
wp_update_user(array('ID' => $current_user->ID, 'user_pass' => $new_pass));
}
}
<form action="" method="post">
<label for="old_pass">old_pass</label>
<input type="password" name="old_pass" id="old_pass">
<label for="new_pass">new_pass</label>
<input type="password" name="new_pass" id="new_pass">
<label for="new_pass_verify">new_pass_verify</label>
<input type="password" name="new_pass_verify" id="new_pass_verify">
<input type="submit">
</form>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment