如何在functions.php中使用域获取表单数据和创建用户
Posted
技术标签:
【中文标题】如何在functions.php中使用域获取表单数据和创建用户【英文标题】:How to get form data and create user using domain in functions.php 【发布时间】:2021-09-21 11:35:58 【问题描述】:我在 Wordpress 网站中有一个来自插件 (Indeed 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');
我已成功获取数据并创建了一个帐户,但它没有重定向到我的帐户页面
【问题讨论】:
这更像是一个规范而不是一个问题。你试过什么?你到底卡在哪里了?向我们展示您的尝试并解释会发生什么以及您期望会发生什么。 我一直在从 functions.php 文件中的表单中获取值。一旦我获得了我可以设法注册用户的值 就像我在之前的评论中所说的那样。向我们展示您的尝试并解释会发生什么以及您期望会发生什么。在这里可以帮助您解决现有代码的具体问题,但为了让我们能够做到这一点,我们需要了解您到目前为止所做的工作。 我已经更新了你所说的问题,非常感谢您的帮助alert()
是 javascript 函数,而不是 PHP 函数。
【参考方案1】:
由于表单来自另一个插件,首先检查它是否具有修改提交查询的扩展选项,然后您可以添加自定义 jquery ajax 以将数据从前端发送到后端。
【讨论】:
您好,该插件没有任何修改提交查询的选项。你能举个例子说明如何使用ajax逐步发送数据,因为我对ajax不是很熟悉 这是一个漫长的过程,但我正在为您提供样本。希望它会为您的目的工作。 ***.com/questions/43557755/… 如果你不能让它工作,请告诉我。我将分享现场样本。以上是关于如何在functions.php中使用域获取表单数据和创建用户的主要内容,如果未能解决你的问题,请参考以下文章
如何获取functions.php中的当前帖子类型以便全局使用?
如何获取 woocommerce 订单的订单 ID 以在 functions.php 中的函数中使用?
php 将Gravity Forms添加到单个AgentPress列表帖子中,并使用帖子标题动态填充表单。将其添加到functions.php中。
apache_conf 将以下代码添加到主题的functions.php文件中,以在“我的帐户”下的注册表单中添加确认密码字段。