Im创建了一个简单的登录/注册页面,其中包含了用户调节和引导wp,用于繁重的工作。
我可以将新用户添加到数据库中,并创建密码并对其进行哈希运算,但当我使用该帐户登录时,密码将不起作用。我被难住了。。。
有人看到我丢了什么吗?
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 );
}
提前感谢,
最合适的回答,由SO网友:Peter Gibbons 整理而成
明白了。我想不能将wp\\u update\\u user用于新添加。
需要使用:
wp_create_user( $userdata[\'user_login\'], $userdata[\'user_pass\'], $userdata[\'user_email\'] );