Gravity Forms - Plugin WordPress

Ce qu'on va faire sur cette page

Gravity Forms est un plugin WordPress premium tres repandu. Il genere des formulaires natifs en HTML, donc le trigger Form Submission de GTM fonctionne, mais la methode AJAX est plus courante.

  1. Ouvrir GTM Preview
  2. Soumettre le formulaire Gravity Forms
  3. Observer les events (AJAX = Custom Event)
  4. Utiliser le listener gform_confirmation_loaded

Gravity Forms (necessite le plugin WP installe)

Gravity Forms

Shortcode WordPress : [gravityform id="1" title="true"]

Le plugin Gravity Forms doit etre installe et active sur WordPress.

Listener Gravity Forms (AJAX)
// Methode 1 : Event natif Gravity Forms (AJAX mode)
// Gravity Forms utilise jQuery et declenche un event custom
// quand le formulaire est soumis avec succes en AJAX.

<script>
  // Ecouter l'event de confirmation Gravity Forms
  jQuery(document).on("gform_confirmation_loaded", function(event, formId) {
    window.dataLayer.push({
      event: "gravity_form_submit",
      form_id: "gf-" + formId,
      form_name: "Gravity Form #" + formId
    });
  });
</script>

// Cet event fire APRES que le message de confirmation s'affiche.
// formId contient l'ID numerique du formulaire Gravity Forms.
Methodes alternatives
// Methode 2 : Si le formulaire redirige (non-AJAX)
// Dans Gravity Forms > Settings > Confirmations :
// Type = "Redirect" -> URL de votre page de confirmation
// URL : /forms/confirmation/?source=gravity-forms&form_id={form_id}

// Methode 3 : Gravity Forms + GTM Form Submission
// Si AJAX est desactive, le formulaire fait un POST classique.
// Le trigger "Form Submission" de GTM le detectera.
// Condition : Form ID contient "gform_"

Gravity Forms : AJAX ou non ?

Par defaut, Gravity Forms est en mode AJAX (pas de rechargement de page). Dans ce cas, le trigger "Form Submission" de GTM ne marche PAS. Il faut utiliser le listener gform_confirmation_loaded. Si AJAX est desactive, le Form Submission classique fonctionne.