Changer le destinataire d’un formulaire Contact Form 7 à la volée
Selon le type de demande, nous pouvons vouloir modifier le destinataire d’un formulaire de contact réalisé avec Contact Form 7 sur WordPress. Pour cela, nous utilisons le hook wpcf7_before_send_mail
, mais depuis les mises à jour aux alentours de la version 4.0 son usage a changé.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
add_action("wpcf7_before_send_mail", "kodex_wpcf7_before_send_mail"); function kodex_wpcf7_before_send_mail($contact_form){ // On récupère les propriétés du formulaire (réglages) $current_mail_array = $contact_form->prop('mail'); // On récupère les données du formulaire posté $submission = WPCF7_Submission::get_instance(); $posted_data = $submission->get_posted_data(); if( $posted_data['sujet'] == "Question" ){ $current_mail_array['recipient'] = "question@test.com"; }else{ $current_mail_array['recipient'] = "contact@test.com"; } // On réattribue les nouvelles propriétés au formulaire $contact_form->set_properties(array('mail'=>$current_mail_array)); } |