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

L'action wpforms_process_before qui se déclenche après que le bouton de soumission d'un formulaire a été cliqué, mais avant que les données du formulaire ne soient validées ou nettoyées.

Paramètres

$entry
(array) Données d'entrée non validées.
$form_data
(array) Paramètres/données du formulaire traités, préparés pour une utilisation ultérieure.

Source

wpforms/includes/class-process.php

Plus d'informations

L'action se déclenche presque immédiatement après que le bouton de soumission du formulaire a été cliqué, avant que la validation des données ne soit effectuée. Comme les données d'entrée n'ont pas été validées ou nettoyées à ce stade du pré-traitement, ce hook doit être utilisé avec prudence.

Les extraits ci-dessous montrent plus de détails sur les paramètres inclus dans ce hook (qui incluent chacun une option de filtre supplémentaire).

$entry = apply_filters( 'wpforms_process_before_filter', $entry, $form_data );

$form_data = apply_filters( 'wpforms_process_before_form_data', wpforms_decode( $form->post_content ), $entry );

Peut-être souhaitez-vous stocker toutes les entrées du formulaire dans un CRM et les marquer comme « échouées » jusqu'à ce qu'elles soient entièrement traitées. Ensuite, en utilisant l'un des hooks ultérieurs, vous pourriez supprimer cette balise « échouée » et la mettre à jour avec « terminée ».

N'oubliez pas que ce hook est utilisé avant la validation des données, alors utilisez-le avec prudence.

Exemples

N'oubliez pas de changer l'ID du formulaire de 5 pour qu'il corresponde à l'ID spécifique du formulaire sur lequel vous souhaitez exécuter votre code. Ou supprimez-le complètement si vous souhaitez l'exécuter sur tous vos WPForms.

/**
 * This action fires almost immediately after the form’s submit button is clicked, before validation takes place for the entry.
 *
 * @link  https://wpforms.com/developers/wpforms_process_before/
 *
 * @param array  $entry     Unvalidated entry data.
 * @param array  $form_data Form data and settings.
 */

function wpf_dev_process_before( $entry, $form_data ) {

	// Only run on my form with ID = 5
	if ( absint( $form_data[ 'id' ] ) !== 5 ) {
        return;
    } 

	// place your custom code here
}
add_action( 'wpforms_process_before', 'wpf_dev_process_before', 10, 2 );