Holen Sie sich Contact Form 7 Formular-ID In PHP

Bin ich mit contact form 7 laden zwei verschiedene Formulare in einer Seite und dann, zusätzlich zu dem senden der E-Mail dynamisch hinzufügen, die Informationen an eine Datenbank. Leider, weil das plugin, ich kann es nicht einfach nur schaffen, alle Eingänge mit unterschiedlichen Namen zu vermeiden, benötigen Sie einen filter. Also, im wesentlichen würde ich gerne ziehen Sie die Formular-ID in die Handlung Haken und dynamisch erstellen der Variablen "$data", basierend auf dem Formular wird eingereicht, aber ich bin mir nicht sicher, wie man den cf7-form-ID. Weiß jemand, wie dies zu erreichen, oder vielleicht ein gangbarer Weg, es zu tun?

Form Kurzwahlnummern

[contact-form-7 id="221" title="Reg 1"] [contact-form-7 id="112" title="Reg 2"]

PHP Action-Hook in functions.php

function save_form( $wpcf7 ) {


global $wpdb;

   $form_to_DB = WPCF7_Submission::get_instance();

   if($form_to_DB) {
       $formData = $form_to_DB->get_posted_data(); 
   }

   if("Request a Free Demo" != $formData['demo_request'][0]){
   $freeDemo = "yes";}else { $freeDemo = "nope";}

   if(THE FORM ID = 221) {
   $data = array(
          some values from the 112 form
      $wpdb->insert( $wpdb->prefix . 'registrations', $data );
   );
   }elseif(THE FORM ID = 112) {
     $data = array(
          some other values from the 112 form
   $wpdb->insert( $wpdb->prefix . 'registrations_2', $data );
   );
   }



}
remove_all_filters('wpcf7_before_send_mail');
add_action('wpcf7_before_send_mail', 'save_form' );
Schreibe einen Kommentar