wp_generate_passwordはパスワードを返しますが、使用することはできません
-
24-10-2019 - |
質問
重いリフティング用のユーザーモデレーションとブートストラップWPを組み込んだ簡単なログイン/登録ページを作成しています。
新しいユーザーをDBに追加することができ、パスワードが作成され、すべてがハッシュされますが、そのアカウントでログインに移動すると、パスワードが機能しません。私は困惑しています...
ただし、管理者アカウントの下で管理者に移動してユーザーのパスワードを変更すると、正常にログインすることができます...
誰かが私が足りないものを見ますか?
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 );
}
解決
とった。新しい追加にはwp_update_userを使用できません。
使用する必要があります:
wp_create_user( $userdata['user_login'], $userdata['user_pass'], $userdata['user_email'] );
所属していません StackOverflow