Beschreibung
Die wpforms_process_entry_save
Aktion wird ausgelöst, wenn ein Eintrag in der Datenbank gespeichert wird.
Parameter
- $Felder
- (array) Bereinigte Werte/Eigenschaften von Eingabefeldern.
- $Eintrag
- (array) Original $_POST global.
- $form_id
- (int) Formular-ID.
- $form_data
- (Array) Verarbeitete Formulareinstellungen/Daten, die für die spätere Verwendung vorbereitet sind.
Quelle
wpforms/includes/class-process.php
Mehr Informationen
Die Aktion wird ausgelöst, nachdem der Eintrag erfolgreich verarbeitet wurde, wenn der Eintrag in der Datenbank gespeichert wird. Das Bestätigungsereignis und die Benachrichtigungs-E-Mail werden ausgelöst, nachdem dieser Hook ausgeführt wurde.
Im Folgenden wird der Kontext beschrieben, in dem die wpforms_process_entry_save
Haken ausgeführt wird.
Dieser Haken wird auch verwendet in wpforms/pro/wpforms-pro.php
, die spezifische Merkmale und Funktionen der kostenpflichtigen Plugin-Version lädt.
/** * @param array $fields * @param array $entry * @param int $form_id * @param array $form_data * * @return int */ public function entry_save( $fields, $entry, $form_id, $form_data = '' ) { do_action( 'wpforms_process_entry_save', $fields, $entry, $form_id, $form_data ); return $this->entry_id; }
Beispiele
Sie können diese Aktion leicht verwenden, um etwas auszulösen, wenn die Einträge in der Datenbank gespeichert werden.
Denken Sie nur daran, die Formular-ID von 5
um der spezifischen Formular-ID zu entsprechen, für die Sie Ihren Code ausführen möchten. Wenn Sie diese Prüfung entfernen, wird der Code für alle Formulare ausgeführt.
/** * Action that fires when an entry is saved to the database. * * @link https://wpforms.com/developers/wpforms_process_entry_save/ * * @param array $fields Sanitized entry field. values/properties. * @param array $entry Original $_POST global. * @param int $form_id Form ID. * @param array $form_data Form data and settings. */ function wpf_dev_process_entry_save( $fields, $entry, $form_id, $form_data ) { // Only run on my form with ID = 5 if ( absint( $form_data[ 'id' ] ) !== 5 ) { return $fields; } // Example checking for the Yes value of a checkbox field (ID 6) and if yes, we'll then run our code if($fields[6][ 'value' ] === 'Yes') { // run some code here } } add_action( 'wpforms_process_entry_save', 'wpf_dev_process_entry_save', 10, 4 );
Wenn Sie Hilfe benötigen, wo Sie Ihre Formular- und Feld-IDs finden, lesen Sie bitte dieses Tutorial.
Referenzartikel
Überschreiben von Einträgen von Benutzern, die bereits ein Formular abgeschickt haben