我使用忍者表单和联系表格7访问用户输入。但我面临的问题是,提交被存储在默认表(wp_post和wp_metapost)中。我觉得访问输入的意见书很不方便。因此,我希望将提交存储到同一个db中的用户定义表中。我怎么能这么做?
我正在使用wordpress网站与忍者表单(联系表格7也很好),Mysql本地wamp服务器。
发布于 2019-01-04 12:18:37
请检查以下步骤如何在自定义数据库表中添加数据。
1)使用以下查询创建数据库表
CREATE TABLE contactfordata(
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(50)
);2)创建具有以下字段的联系人表单7
[text* name]
[submit "Send"]3)在fucntions.php文件中添加以下代码
remove_all_filters ('wpcf7_before_send_mail');
add_action( 'wpcf7_before_send_mail', 'before_send_mail_contactform7' );
function before_send_mail_contactform7( $formdata_db )
{
$mydb_CUSTOM = new wpdb('DB_USERNAME','DB_PASSWORD','DB_NAME','HOST_NAME'); // add db detail here
$formdata_db = WPCF7_Submission::get_instance();
if ( $formdata_db )
$formData = $formdata_db->get_posted_data();
$name = $formData['name']; // set form data in variable
$mydb_CUSTOM->insert( 'contactfordata', array( 'name' =>$name ), array( '%s' ) ); // insert the data in your custom table.
}这将对您的代码进行测试。
https://stackoverflow.com/questions/54035567
复制相似问题