我正在进行自定义注册过程,用户首先填写自己的姓名和电子邮件,然后收到激活电子邮件,然后继续注册过程。
该电子邮件包含一个带有引用的激活链接。我需要在我的新用户中保存此引用,以便如果用户单击链接,我可以检索回用户数据。
但由于某些原因,我无法通过插入新用户来添加用户元数据。
因此,首先我要处理表单,从中获取POST值。如果它们是真的,我启动此代码:
$ref = md5( get_bloginfo( \'name\' ) . $reg_email );
$activation_url = get_bloginfo( \'wpurl\' ) . \'/search-company?ref=\' . $ref;
// Create user
$random_password = wp_generate_password( 12, true, false );
$user_id = username_exists( $email );
$userdata = array(
\'user_login\' => $email,
\'user_pass\' => $random_password,
\'user_email\' => $email,
\'first_name\' => $first_name,
\'last_name\' => $surname,
\'role\' => \'author\',
);
wp_insert_user( $userdata );
add_user_meta( $userdata, \'verification_ref\', $ref );
然后我通过
wp_mail()
使用激活链接,这很好,但我只需要将验证引用保存在用户的用户元中。