Question

Im creating a simple login/registration page incorporating user moderation and bootstrapping wp for the heavy lifting.

I can get the new user added to the db and a password gets created and hashed and all, but when i go to login w/ that account the password won't work. i'm stumped...

However, when i go into the admin under my admin account and change the password for the user it allows me to login just fine...

Anyone see anything i'm missing?

require_once( ABSPATH . WPINC . '/registration.php' );
$user_pass = wp_generate_password();
$userdata = array(
  'user_pass' => $user_pass,
  'user_login' => esc_attr( $_POST['user_email'] ),
  'user_email' => esc_attr( $_POST['user_email'] ),
);

if( !$userdata['user_login'] )
  $error .= __('An Email Address is required for registration.', 'frontendprofile');
elseif ( username_exists( $userdata['user_login'] ) )
  $error .= __('Sorry, that Email Address is already in use for another account.', 'frontendprofile');
elseif ( !is_email( $userdata['user_email'] ) )
  $error .= __('You must enter a valid Email Address.', 'frontendprofile');
elseif ( email_exists( $userdata['user_email'] ) )
  $error .= __('Sorry, that Email Address is already for another account.', 'frontendprofile');

else{
  $new_user = wp_update_user( $userdata );
}
Was it helpful?

Solution

Got it. Cant use wp_update_user for new addition i guess.

need to use:

wp_create_user( $userdata['user_login'], $userdata['user_pass'], $userdata['user_email'] );

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top