Umso
Code personnalisé

Exécuter du code après le consentement aux cookies

Pour utiliser la fonctionnalité décrite dans cet article, vous devez activer la bannière de cookies et le blocage préalable. Ces fonctionnalités sont uniquement disponibles pour les sites payants sur le moteur v3.

Contexte

Notre système de cookies classe les cookies en quatre types, structurés comme ceci : ​

[
    "strictly_necessary",
    "functionality",
    "performance",
    "targeting"
]

Pour en savoir plus sur les différentes catégories, veuillez consulter cet article.

Comment exécuter du code seulement après l'obtention d'un consentement spécifique

Pour prendre en charge l'exécution conditionnelle de scripts, nous avons introduit deux outils :

  • window.umsoCookieConsent — une variable globale contenant le statut de consentement actuel du visiteur et les catégories.

  • umsoCookieConsentGranted — un événement personnalisé déclenché chaque fois qu'un utilisateur enregistre ou met à jour ses préférences de consentement.

Ceux-ci vous permettent d'exécuter une logique de manière conditionnelle en fonction des choix du visiteur.

Structure de l'événement / de la variable globale

L'événement umsoCookieConsentGranted a la structure suivante : ​

{
  "detail": { 
    "categories": [
      "strictly_necessary",
      "functionality",
      "performance",
      "targeting"
    ]
  }
}

La variable globale window.umsoCookieConsent a la structure suivante : ​

{ 
  "categories": [
    "strictly_necessary",
    "functionality",
    "performance",
    "targeting"
  ]
}

Bonnes pratiques

Pour garantir que vos scripts reflètent toujours l'état de consentement le plus récent :

  • Utilisez la variable window.umsoCookieConsent pour accéder au statut actuel.

  • Écoutez également l'événement umsoCookieConsentGranted pour répondre aux mises à jour en temps réel.

Cette approche garantit que tous les scripts que vous exécutez, tels que le pistage, l'Analytics ou la personnalisation, respectent les préférences de l'utilisateur dès sa première visite.

Exemple : Intégration de Microsoft Clarity

Si vous utilisez Microsoft Clarity et souhaitez vous assurer qu'il ne s'exécute que lorsque le visiteur consent aux cookies de performance, suivez ces étapes :

  1. Incluez le script de suivi par défaut de Clarity dans votre en-tête ou votre gestionnaire de balises.

  2. Ajoutez le script suivant pour activer ou désactiver Clarity de manière conditionnelle :

<script>
  // reusable function to handle consent 
  function handleClarityConsent(categories) {
    const clarityLoaded = typeof window.clarity === 'function';
    if (!clarityLoaded) {
      return;
    }

    if (Array.isArray(categories) && categories.includes('performance')) {
      window.clarity('consent');
    } else {
      window.clarity('consent', false);
    }
  }

  // run this code when your clarity script has been loaded 
  // to read any existing content responses
  const initialConsent = window.umsoCookieConsent;
  if (initialConsent && Array.isArray(initialConsent.categories)) {
    handleClarityConsent(initialConsent.categories);
  }

  // once you have initialized clarity, you'll want to add this code
  // to listen for future consent changes
  window.addEventListener('umsoCookieConsentGranted', e => {
    handleClarityConsent(e.detail.categories);
  });
</script>

Cela vous a-t-il été utile ?