我有最后一个WordPress网站,最后一个联系表是7,并且安装了火烈鸟插件。
这是一个简单的表单,带有电子邮件字段和消息字段。
我想查询数据库,以检查电子邮件是否已经向我的站点发送了以前的消息。
这可能吗?
我正在尝试创建一个使查询进入数据库的PHP文件,并在提交表单后使用ajax调用该文件。
这是个好主意吗?
答案 0 :(得分:2)
这是您的意思吗?
add_filter( 'wpcf7_validate', 'email_already_in_db', 10, 2 );
function email_already_in_db ( $result, $tags ) {
// retrieve the posted email
$form = WPCF7_Submission::get_instance();
$email = $form->get_posted_data('your-email');
// if already in database, invalidate
if( email_exists( $email ) ) // email_exists is a WP function
$result->invalidate('your-email', 'Your email exists in our database');
// return the filtered value
return $result;
}