【发布时间】:2018-03-25 19:14:59
【问题描述】:
我正在尝试从我们的 Contact7 表单之一发布数据,然后将该数据保存在 mysql 表中。我对 WordPress 很陌生。我遵循其他人的代码。但是我没有运气在我的表中接收数据。我觉得 add_action-wpcf7_before_send_mail 无法挂钩我的函数,因为我在函数内部编写了拼写错误或遗漏的代码来测试它是否有效。但是当我从我的 wordpress 表单提交数据时没有显示错误。以下是我的代码,请评论任何可能有帮助的内容。谢谢!
add_action('wpcf7_before_send_mail','contactform7_before_send_mail',1);
function contactform7_before_send_mail( $contact_form ) {
$wpcf7_data->skip_mail = true;
global $wpdb;
$title = $contact_form->title();
$submission = WPCF7_Submission::get_instance();
if ( $submission ) {
$formData = $submission->get_posted_data();
}
if ( 'Membership-2' == $title ) {
$name = $formData['your-name'];
$email = $formData['your-email'];
$company = $formData['your-company'];
$title = $formData['your-title'];
$location = $formData['your-location'];
}
$wpdb->insert('aoe84i5nxf_member_info', array('id' => null,'name' => $name,'email' => $email,'company' => $company,'title' => $title, 'location' => $location), array(null,'%s','%s','%s','%s','%d') );
}
remove_all_filters ('wpcf7_before_send_mail');
【问题讨论】:
-
你最后有
remove_all_filters,它会删除你添加到钩子中的内容。要保存表单值,您是否尝试过插件 Flamingo ? wordpress.org/plugins/flamingo -
非常感谢,现在可以了! :)
标签: php mysql wordpress contact-form-7