KI-Zusammenfassung
Beschreibung
Die wpforms_process_entry_save Aktion wird ausgelöst, wenn ein Eintrag in der Datenbank gespeichert wird.
Parameter
- $fields
- (array) Bereinigte Feldwerte/Eigenschaften des Eintrags.
- $entry
- (array) Original $_POST Global.
- $form_id
- (int) Formular-ID.
- $form_data
- (array) Verarbeitete Formulareinstellungen/Daten, die zur späteren Verwendung vorbereitet sind.
Quelle
wpforms/includes/class-process.php
Weitere 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.
Unten sehen Sie den Kontext, in dem der wpforms_process_entry_save Hook ausgeführt wird.
Dieser Hook wird auch in wpforms/pro/wpforms-pro.php verwendet, das Funktionen und Merkmale lädt, die spezifisch für die kostenpflichtige Plugin-Version sind.
/**
* @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önnten diese Aktion leicht verwenden, um etwas auszulösen, wenn die Einträge in der Datenbank gespeichert werden.
Denken Sie daran, die Formular-ID von 5 zu ändern, um die spezifische Formular-ID anzugeben, für die Sie Ihren Code ausführen möchten. Das Entfernen dieser Prüfung würde den Code für alle Formulare ausführen.
/**
* 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
So überschreiben Sie Einträge von Benutzern, die bereits ein Formular eingereicht haben