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_frontend_output_before se déclenche avant qu'un formulaire ne soit affiché sur le front-end du site, uniquement si le formulaire existe et contient des champs.

Paramètres

$form_data
(array) Paramètres/données du formulaire traités, préparés pour une utilisation ultérieure.
$form
(WP_Post) Objet du type de publication du formulaire.

Source

wpforms/src/Frontend/Frontend.php

Plus d'informations

Bien que wpforms_frontend_output_before ne se déclenche que pour les formulaires valides et non vides, il s'exécute tôt dans le processus de rendu de la sortie.

Dans certains cas, l'action peut se déclencher mais le formulaire ne s'affichera pas, comme lors de l'affichage d'un message de confirmation de formulaire ou du déclenchement du filtre wpforms_frontend_load.

Une action alternative à considérer est wpforms_frontend_output_after, car elle fonctionne de manière similaire, sauf qu'elle ne se déclenche qu'après l'affichage du formulaire.

Exemples

Dans notre exemple de snippet de code, vous verrez ci-dessous, nous allons d'abord vérifier si l'ID du formulaire est égal à 5. Si c'est le cas, nous afficherons un lien pour télécharger le catalogue numérique.

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. La suppression de cette vérification s'appliquerait à tous les formulaires.

/**
 * Output something before your form(s).
 * 
 * @link  https://wpforms.com/developers/wpforms_frontend_output_before/
 *
 * @param array  $form_data Form data and settings.
 * @param object $form      Form post type object.
 */

function wpf_dev_frontend_output_before( $form_data, $form ) {
    
    // Optional, you can limit to specific forms. Below, we restrict output to
    // form #5.
    if ( absint( $form_data[ 'id' ] ) !== 5 ) {
        return;
    } 

    // Run code or see the example echo statement below.
    _e( '<p>If you would like to download our digital catalog, <a href="http://yourlinkurl.com/" target="_blank">click here</a>.</p>', 'plugin-domain' );

}

add_action( 'wpforms_frontend_output_before', 'wpf_dev_frontend_output_before', 10, 2 );

Articles de référence

Comment ajouter une vidéo avant votre formulaire