2015-06-10 34 views
0

我试图在wordpress中使用表单输入作为帐户详细信息插入用户。我的代码是这样的:使用wp_insert_user在wordpress中添加用户不起作用

$userdata = array(
    'user_login' => $_POST["post_email"], 
    'first_name' => $_POST["post_voornaam"], 
    'last_name' => $_POST["post_achternaam"], 
    'user_email' => $_POST["post_email"], 
    'user_pass' => $_POST["password_confirm"] 
); 

$user_id = wp_insert_user($userdata) ; 

add_user_meta($user_id, 'klant_id', $klant_id); 

正如你所看到的,我在实际创建帐户后也使用了用户元字段。可悲的是这些都不起作用。有没有人有任何想法,为什么这是失败?

它似乎也没有返回错误。

+1

确保你所有的值都是他们应该的。 'var_dump($ _ POST);''var_dump($ user_id);' –

+0

'wp_insert_user'返回一个['WP_Error'](https://codex.wordpress.org/Class_Reference/WP_Error)对象。如果你在创建用户后检查'$ user_id'的值,这可能会告诉你为什么它不起作用,或者如果它成功,就给出ID。 – drew010

回答

0

确保您的所有帖子值。后续代码var_dump($ _ POST)。 如果您拥有所有后期值,则尝试使用get_error_message()函数在插入用户时收到错误消息。

$userdata = array(
    'user_login' => $_POST["post_email"], 
    'first_name' => $_POST["post_voornaam"], 
    'last_name' => $_POST["post_achternaam"], 
    'user_email' => $_POST["post_email"], 
    'user_pass' => $_POST["password_confirm"] 
); 

$user_id = wp_insert_user($userdata) ; 


if(is_wp_error($user_id )) { 
    echo $return->get_error_message(); 
} 

add_user_meta($user_id, 'klant_id', $klant_id); 
+0

这并没有真正提供一个问题的答案... – rnevius

+0

@ mevius我编辑了代码 – sarath

相关问题