ho fatto questa modifica:
codice:
function email_already_in_db ( $contact_form ) {
$form_id = $contact_form->id();
$submission = WPCF7_Submission::get_instance();
$form_posted_data = $submission->get_posted_data();
$unique_field_name = preg_grep("/unique(\w+)/", array_keys($form_posted_data));
reset($unique_field_name);
$first_key = key($unique_field_name);
$unique_field_name = $unique_field_name[$first_key];
global $wpdb;
$entry = $wpdb->get_results( "SELECT * FROM zzx_cf7_vdata_entry WHERE name LIKE '$unique_field_name' AND value='$email'" );
if (!empty($entry)) {
$result->invalidate($field_name, 'Your email: '.$email.' already exists in our database.');
}
}
add_action( 'wpcf7_before_send_mail', 'email_already_in_db', 10 , 1 );
non ottengo più l'errore in console, ma sostanzialmente non funziona.
nel senso che mi valida sempre il form anche se metto sempre la stessa email.