Database 将自定义Wordpress联系人表单数据存储到联系人表单数据库中

Database 将自定义Wordpress联系人表单数据存储到联系人表单数据库中,database,wordpress,forms,contact-form,contact-form-7,Database,Wordpress,Forms,Contact Form,Contact Form 7,我在Wordpress中创建了一个自定义表单,用户在其中填写一些输入字段,提交表单时,收件人现在收到邮件。我需要的是,当用户提交数据时,数据应该存储到联系人表单数据库中。使用Contact Form 7插件,所有数据都会存储,但我需要将自定义的Contact Form数据存储到Contact Form 7 db中 你能帮我找到一个可能的解决办法吗?最后,找到了确切的解决办法 如果我们想通过编程将数据推送到联系人表单数据库中,您需要了解两件基本的事情: How to struture your f

我在Wordpress中创建了一个自定义表单,用户在其中填写一些输入字段,提交表单时,收件人现在收到邮件。我需要的是,当用户提交数据时,数据应该存储到联系人表单数据库中。使用Contact Form 7插件,所有数据都会存储,但我需要将自定义的Contact Form数据存储到Contact Form 7 db中


你能帮我找到一个可能的解决办法吗?

最后,找到了确切的解决办法

如果我们想通过编程将数据推送到联系人表单数据库中,您需要了解两件基本的事情:

How to struture your form data so that the plugin knows how to consume it
How to call the plugin’s save data function
数据的结构应如下所示:

$data = (object)  array(
    'title' => 'form-name',
    'posted_data' => array(
    'fname' => $_POST['fname'],
    'lname' => $_POST['lname'],
    'email' => $_POST['email']);
其中“form name”是表单的名称,“fname”、“lname”和“email”是本例中的表单字段。将其替换为表单中的字段

调用插件

require_once(ABSPATH . 'wp-content/plugins/contact-form-7-to-database-extension/CF7DBPlugin.php');
$plugin = new CF7DBPlugin();
$plugin->saveFormData(&$data);
或使用CF7的挂钩

do_action_ref_array( 'wpcf7_before_send_mail', array( &$data) );
使用CF的钩子的优点是我们不需要包含CF7DBPlugin.php文件,它是一种去耦合的方法。缺点是任何其他监听钩子的插件也会得到数据