我使用divi模块创建了一个注册表单,该模块发送一封包含表单中信息的电子邮件,但我也想将这些输入保存在数据库中。我已经花了几个小时在互联网上寻找类似的问题,我发现的唯一问题是this,我在数据库中创建了一个新表,然后创建了一个插件来保存脚本,但从未输入if条件。
如何实现所需的功能?我是wordpress和php的新手,如果我的问题和方法看起来很愚蠢,我会道歉
<?php
/**
* Plugin Name: Very First Plugin
* Plugin URI: https://www.yourwebsiteurl.com/
* Description: This is the very first plugin I ever created.
* Version: 1.0
* Author: Your Name Here
* Author URI: http://yourwebsiteurl.com/
**/
// Silence is golden.
function td_divi_contact_form_capture( $content ) {
$html = "<script>console.log('PHPa: ".count( $_POST )."');</script>";
echo($html);
// The preg_match looks for the div with the "thank you" message to be populated
if (
// count( $_POST ) > 0 &&
// array_key_exists( '_wpnonce-et-pb-contact-form-submitted', $_POST ) &&
preg_match( '%<div class="et-pb-contact-message"><p>[^<]+</p></div>%s', $content) ) {
$html = "<script>console.log('PsHP: ".count( $_POST )."');</script>";
echo($html);
// $form_fields = [];
// $form_id = false;
// foreach ( $_POST as $key => $val ) {
// if ( preg_match( '/^et_pb_contact_(.+)_(\d)+$/', $key, $parts ) ) {
// $field_name = $parts[1];
// if ( $field_name == 'email_fields' || $field_name == 'email_hidden_fields' ) {
// $form_id = $parts[2];
// } else {
// $form_fields[ $field_name ] = $val;
// }
// }
// }
// if ( count( $form_fields ) > 0 ) {
// td_divi_contact_form_save(
// trim( $_POST['_wp_http_referer'], '/' ),
// $form_id,
// $form_fields
// );
// }
}
return $content;
}
add_filter( 'the_content', 'td_divi_contact_form_capture', 20);