Descrizione
Il wpforms_post_submissions_process_meta
viene eseguito sul valore che viene salvato per il campo personalizzato (quello che viene passato a update_post_meta()).
Parametri
- $valore_campo
- (stringa) Valore del campo dal modulo.
- $meta_chiave
- (stringa) Meta-chiave del campo personalizzato.
- $campo_id
- (int) ID del campo.
- $campi
- (array) Valori/proprietà dei campi di inserimento sanificati.
- $form_data
- (array) Impostazioni/dati del modulo elaborati, preparati per essere utilizzati in seguito.
Fonte
wpforms-post-submissions/class-post-submissions.php
Ulteriori informazioni
Questo filtro può essere utilizzato per modificare il valore di un campo salvato dall'addon Post Submissions.
Esempi
Di seguito è riportato un esempio di snippet con questo filtro che modifica il salvataggio di post_meta per utilizzare il timestamp UNIX.
/** * Customize post_meta value during WPForms Post Submissions processing. * * @link https://wpforms.com/developers/wpforms_post_submissions_process_meta/ * * @param string $field_value Field value from the form. * @param string $meta_key Custom field meta key. * @param int $field_id Field ID. * @param array $fields Sanitized entry field values/properties. * @param array $form_data Processed form settings/data, prepared to be used later. * * @return string */ function wpf_post_submission_process_meta( $field_value, $meta_key, $field_id, $fields, $form_data ) { // Only run on my form with ID = 443 if ( absint( $form_data[ 'id' ] ) !== 443 ) { return; } // If the field has a specific meta key and contains a unix time stamp, // use that for the post_meta value. if ( $meta_key === 'some_post_meta_key' && ! empty( $fields[ $field_id ][ 'unix' ] ) ) { $field_value = $fields[ $field_id ][ 'unix' ]; } return $field_value; } add_filter( 'wpforms_post_submissions_process_meta', 'wpf_post_submission_process_meta', 10, 5 );
Ricordarsi di sostituire la meta-chiave nel codice precedente in modo che corrisponda alla meta-chiave utilizzata e all'ID del modulo. 443
. Se avete bisogno di aiuto per trovare l'ID del vostro modulo, Consultate questa utile documentazione.
Correlato
Riferimento all'articolo: Come memorizzare i valori delle caselle di controllo come array con gli invii dei post