Attention !

Cet article contient du code PHP et est destiné aux développeurs. Nous fournissons ce code à titre de courtoisie, mais nous n'offrons pas de support pour les personnalisations de code ou le développement tiers.

Pour obtenir de l'aide supplémentaire, veuillez consulter le tutoriel de WPBeginner sur l'ajout de code personnalisé.

Ignorer

Description

Le filtre wpforms_post_submissions_process_meta s'exécute sur la valeur qui est enregistrée pour le champ personnalisé (ce qui est passé à update_post_meta()).

Paramètres

$field_value
(string) Valeur du champ du formulaire.
$meta_key
(string) Clé de métadonnées du champ personnalisé.
$field_id
(int) ID du champ.
$fields
(array) Valeurs/propriétés des champs de saisie nettoyées.
$form_data
(array) Paramètres/données du formulaire traités, préparés pour une utilisation ultérieure.

Source

wpforms-post-submissions/class-post-submissions.php

Plus d'informations

Ce filtre peut être utilisé pour modifier la valeur d'un champ enregistré à partir du addon Post Submissions.

Exemples

Vous trouverez ci-dessous un exemple d'extrait avec ce filtre qui modifiera l'enregistrement de post_meta pour utiliser le 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 );

N'oubliez pas de remplacer la clé de métadonnées dans le code ci-dessus pour correspondre à la clé de métadonnées que vous utilisez, ainsi qu'à l'ID du formulaire 443. Si vous avez besoin d'aide pour trouver l'ID de votre formulaire, veuillez consulter cette documentation utile.

Référence d'article : Comment stocker les valeurs des cases à cocher sous forme de tableaux avec Post Submissions