2011-03-15 58 views
0

我创建了一个简单的登录/注册页面,包含用户审核和自举wp的繁重工作。wp_generate_password返回密码,但无法使用它登录

我可以得到新的用户添加到数据库和密码获取创建和哈希和所有,但是当我去登录w /该帐户的密码将无法正常工作。我难倒...

然而,当我去到管理下我的管理员帐户和更改用户的密码就可以让我登录就好了......

任何人都看不到任何东西我是失踪?

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); 
} 

回答

0

明白了。不能使用wp_update_user为我猜的新增加。

需要使用:

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