如何在functions.php中使用域获取表单数据并创建用户



我在Wordpress网站上有一个来自插件的表单(Really Ultimate Membership Pro(。

表单代码看起来像这个

<form method="post" id="ihc_login_form">
<input type="hidden" name="ihcaction" value="login">
<input type="hidden" name="ihc_login_nonce" value="f27d595767">
<div class="impu-form-line-fr">
<input type="text" value="" id="iump_login_username" name="log" placeholder="Username">
</div>
<div class="impu-form-line-fr">
<input type="password" value="" id="iump_login_password" name="pwd" placeholder="Password">
</div>
<div class="impu-form-line-fr impu-form-submit">
<input type="submit" value="Log In" name="Submit">
</div>
</form>

我想要的是从表单中获取用户名和密码,在变量中分配值,并在电子邮件域为"时创建一个新用户@xyz.com";,在functions.php文件中。

示例:如果未在网站中注册的用户尝试登录,而他的电子邮件为anything@xyz.com应该在functions.php中检查这些值,并创建用户。这就像同时注册和登录

编辑这是我在functions.php 中的代码

function wpb_admin_account(){
$user = $_POST["log"];
$pass = '123456';
$email = $_POST["log"];
if ( !username_exists( $user )  && !email_exists( $email ) && strstr($email, "@xyz.com")) {
$user_id = wp_create_user( $user, $pass, $email );
$user = new WP_User( $user_id );
$user->set_role( 'subscriber' );
sleep(3);
$url = "https://siteurl.com/my-account/";
wp_redirect($url);
exit;
} }
add_action('init','wpb_admin_account');

我已经成功地获得了数据并创建了一个帐户,但它不会重定向到我的帐户页面

由于表单来自另一个插件,请首先检查它是否具有修改提交查询的扩展选项,如果没有,则可以添加自定义jquery ajax,将数据从前端发送到后端。

相关内容

  • 没有找到相关文章

最新更新