Configurar TrustArc per obtenir el consentiment dels usuaris

Per capturar estadístiques valuoses i alhora protegir la privadesa de l'usuari, heu d'obtenir el consentiment dels usuaris del vostre lloc web. Us recomanem que utilitzeu una plataforma de gestió del consentiment (CMP) o que treballeu amb el vostre sistema de gestió de continguts (CMS) per obtenir el consentiment i enviar-lo a Google.

Pas 1: configurar un bàner de consentiment

  1. Si teniu CCM Advanced (servei gestionat), el vostre gestor tècnic de comptes (TAM) configurarà el bàner seguint les vostres directrius d'estil i requisits.
  2. Si teniu CCM Pro (CMP d'autoservei), TrustArc us proporcionarà l'URL per iniciar la sessió al portal i configurar el bàner mitjançant les plantilles predefinides de l'auxiliar.
  3. Assegureu-vos que el bàner compleixi els requisits de la política de consentiment dels usuaris de la UE de Google (EUUCP). Per obtenir més informació sobre la configuració del bàner de TrustArc, consulteu la secció d'introducció de la guia d'usuari.
  4. Incloeu els elements <div>, responsables de renderitzar el bàner i l'enllaç a la CMP, al codi del vostre lloc web o mitjançant Google Tag Manager.

Pas 2: configurar el mode de consentiment

Utilitzar Google Tag Manager

  1. Obriu Tag Manager i navegueu fins al vostre contenidor.
  2. A "Etiquetes", feu clic a Nova i poseu un nom a l'etiqueta.
  3. Feu clic a Configuració de l'etiqueta i, tot seguit, a Descobriu més tipus d'etiquetes, a la galeria de plantilles de la comunitat. A la galeria, cerqueu la plantilla "TrustArc CMP (Consent Mode)" de TrustArc i, a continuació, instal·leu-la.
  4. Definiu la configuració predeterminada que vulgueu utilitzar a "Default Consent Mode settings" (Configuració del mode de consentiment predeterminat).
  5. Seleccioneu l'opció Deploy CMP Script using the template (Implementa l'script de la CMP mitjançant la plantilla).
    1. Al camp CMP ID (Identificador de la CMP), introduïu l'identificador d'instància disponible a Step 4. Copy Code Snippet (Pas 4. Copieu el fragment de codi) del portal de CCM Pro. Si teniu CCM Advanced, el gestor tècnic de comptes us pot proporcionar aquesta informació.
    2. Al camp Additional parameters (Paràmetres addicionals), introduïu la configuració addicional per a la vostra instància. Aquesta configuració s'utilitza per anul·lar les configuracions de backend, com ara l'idioma, la detecció geogràfica, els enllaços a la política de privadesa, etc.
  6. Configureu la integració del mode de consentiment de Google activant l'opció Integrate CMP with Google Consent Mode (Integra la CMP amb el mode de consentiment de Google).
  7. Indiqueu el mapatge dels tipus de consentiment i de les preferències de l'usuari segons la vostra configuració. Per a cada tipus de consentiment que feu servir, assigneu-lo a l'identificador corresponent del compartiment de consentiment de galetes (obligatori, funcional o publicitari). Al camp Preferences Cookie (Galeta de preferències), assigneu una galeta pròpia per a cmapi_cookie_privacy. Al camp Behavior Cookie (Galeta de comportament), assigneu una galeta pròpia per a notice_behavior.
  8. Feu clic a Triggering > Consent Initialization - All Pages > Save (Activadors > Inicialització del consentiment - Totes les pàgines > Desa).
  9. Per provar el contenidor, feu clic a Previsualitza a l'extrem superior dret. Consulteu les instruccions de prova a continuació.
  10. Publiqueu el contenidor.

Utilitzar altres plataformes o editar directament el codi del lloc web

  1. Inicieu la sessió al TrustArc Support Portal (Portal d'assistència de TrustArc), obriu la guia d'implementació del mode de consentiment de Google de TrustArc i seguiu les instruccions de la secció sobre com podeu integrar el mode de consentiment mitjançant JavaScript​​.
  2. Si utilitzeu un creador de llocs web, consulteu-ne la documentació per obtenir informació sobre com podeu implementar el codi a l'etiqueta de capçalera de cada pàgina. En cas contrari, aneu al pas 3.
  3. Si feu servir la versió CCM Advanced, seguiu aquest pas. En cas contrari, aneu al pas 4. A l'etiqueta de capçalera de cada pàgina (consulteu el pas 2 si utilitzeu un creador de llocs web), copieu i enganxeu el codi de sota a la part superior de l'etiqueta de la capçalera, seguit de l'script de la CMP que heu copiat al pas 1. Tingueu present que aquest pas és essencial perquè la CMP funcioni correctament.

    <script>

    window.dataLayer = window.dataLayer || [];

    function gtag(){dataLayer.push(arguments);}

     

    gtag('js', new Date());

    gtag('config', 'AW-YYYYYY');

     

    // Establiu el tipus de consentiment predeterminat en "denied" (denegat) com a espai reservat

    // Determineu els valors actuals en funció dels vostres propis requisits

    // Ometeu els tipus de consentiment que no s'utilitzen

    gtag('consent', 'default', {

    'ad_storage': 'denied',

    'ad_user_data': 'denied',

    'ad_personalization': 'denied',

    'analytics_storage': 'denied',

    'functionality_storage': 'denied',

    'personalization_storage': 'denied',

    'security_storage': 'denied',

    'wait_for_update': 500

    });

    gtag('set', 'ads_data_redaction', true);

    gtag('set', 'developer_id.dNTIxZG', true);

    </script>

    <!--L'script del bàner va aquí-->

  4. Si feu servir la versió CCM Pro, seguiu aquest pas. A l'etiqueta de capçalera de cada pàgina (consulteu el pas 2 si utilitzeu un creador de llocs web), copieu i enganxeu el codi de sota a la part superior de l'etiqueta de la capçalera, seguit de l'script de la CMP que heu copiat al pas 1. Tingueu present que aquest pas és essencial perquè la CMP funcioni correctament. Assegureu-vos d'ajustar l'associació entre els compartiments de la CMP i els tipus de consentiment.

    window.dataLayer = window.dataLayer || [];

    function gtag() { dataLayer.push(arguments); }

    gtag('js', new Date());

    gtag('config', 'GA_MEASUREMENT_ID');

    gtag('set', 'developer_id.dNTIxZG', true);

    // TODO: es pot canviar en funció de la necessitat del client i la configuració

    gtag('set', 'ads_data_redaction', true);

    gtag('set', 'url_passthrough', true);

    //Estat del mode de consentiment

    const ConsentType = {

    DENIED: 'denied',

    GRANTED: 'granted',

    };

     

    const convertBooleanToGrantedOrDenied = (boolean) => boolean ? ConsentType.GRANTED : ConsentType.DENIED;

     

    /*

    TODO: aquí és on podeu configurar el mode de consentiment de Google i mapar la categorització de la CMP i els valors predeterminats per a la inicialització del consentiment

    Google recomana comentar els tipus de consentiment que no vulgueu utilitzar.

    */

    const domain = 'your_domain.com'; // TODO: update

    // Bucket Mapping

    const REQUIRED = 1;

    const FUNCTIONAL = 2;

    const ADVERTISING = 3;

    const consentTypesMapped = {

    'ad_storage': ADVERTISING,

    'ad_user_data': ADVERTISING,

    'ad_personalization': FUNCTIONAL,

    'analytics_storage': FUNCTIONAL,

    'functionality_storage': FUNCTIONAL,

    'personalization_storage': FUNCTIONAL,

    'security_storage': REQUIRED

    }

    const getConsentState = (prefCookie) => {

    var consentStates = {};

    var noticeBehavior = window.truste.util.readCookie("notice_behavior");

    /*

    TODO: es pot canviar en funció de la necessitat del client i la configuració

    */

    var impliedLocation = noticeBehavior && noticeBehavior.includes("na");

    for (const consentType in consentTypesMapped) {

    var id = consentTypesMapped[consentType];

     

    if(prefCookie && !prefCookie.includes(0)) {

    console.log("Existing consent..");

    consentStates[consentType] = convertBooleanToGrantedOrDenied(prefCookie && prefCookie.includes(id));

    } else {

    console.log("Non Existing consent..");

    consentStates[consentType] = convertBooleanToGrantedOrDenied(impliedLocation);

    ;}

    ;}

    consentStates['wait_for_update'] = 500;

    console.log(consentStates);

    return consentStates;

    };

    /*

    Funció d'ajuda per enviar un esdeveniment de GCM basat en les preferències de l'usuari a l'script de TrustArc

    consent: l'objecte de consentiment serà una matriu de valors [1, 2, 3, n] en què 1 indica que l'usuari ha donat el consentiment obligatori; 2 indica que ha donat el funcional, etc.

    Aquesta funció s'ha de personalitzar segons el mapatge que necessiti el client. Per exemple: 'ad_storage': returnGrantedOrDenied(advertisingAccepted) es mapa al compartiment publicitari. Per maparla al compartiment funcional, només hem de canviar la variable del compartiment al qual assenyala.

    */

     

    var runOnceGCM = 0;

    function handleConsentDecisionForGCM(consent) {

    //Aquest codi inicialitza el mode de consentiment

    const consentStates = getConsentState(consent.consentDecision);

    var defaultOrUpdate;

    if (runOnceGCM == 0) {

    defaultOrUpdate = 'default';

    runOnceGCM++;

    } else {

    console.log('consent is being updated');

    defaultOrUpdate = 'update';

    }

    console.log(consentStates);

    //Un cop canviat el consentiment, enviarem una actualització 

    gtag('consent', defaultOrUpdate, {

    consentStates

    });

    }

     

    // Aquest codi és responsable d'escoltar els canvis en el consentiment fets a través de la instancia del CCM de TrustArc

    // També d'enviar a la capa de dades (dataLayer) els canvis en el consentiment, d'acord amb el mapatge de consentiment del client

    // Això és per a la càrrega inicial. Si l'usuari té un consentiment diferent del dels valors predeterminats, això és per enviar una actualització a la capa de dades

    // un cop que es carregui el CCM.

    var interval = setInterval(() => {

    if (window.truste) {

    var consentDecision = truste.cma.callApi("getGDPRConsentDecision", domain);

    handleConsentDecisionForGCM(consentDecision);

    clearInterval(interval);

    console.log("running once...");

    }

    }, 100);

     

    // Comenceu a escoltar quan els usuaris enviïn les seves preferències

    window.addEventListener("message", (event) => {

    let eventDataJson = null;

    // En aquest punt, només ens interessen els esdeveniments de TrustArc. A més, els esdeveniments de TrustArc estan codificats en JSON

    try {

    eventDataJson = JSON.parse(event.data);

    } catch {

    // Altres esdeveniments que no són JSON.

    // TrustArc codifica les dades com a JSON

    // console.log(event.data);

    }

     

    // Protecció per assegurar-nos que només rebem esdeveniments de TrustArc

    if (eventDataJson && eventDataJson.source === "preference_manager") {

    // Significa que l'usuari ha enviat les seves preferències

    if (eventDataJson.message === "submit_preferences") {

    console.log("Event Data: ", eventDataJson);

    // Espera de mig segon per assegurar-nos que es reflecteixen les preferències de l'usuari. 

    setTimeout(() => {

    var consentDecision = truste.cma.callApi("getGDPRConsentDecision", domain);

    console.log("Consent Decision: ", consentDecision);

    handleConsentDecisionForGCM(consentDecision);

    }, 500);

    }

    }

    }, false);

    <!--L'script del bàner va aquí-->

Fer proves amb Tag Assistant

Obteniu més informació sobre com podeu resoldre problemes relacionats amb el mode de consentiment amb Google Tag Manager.

Ha estat útil?

Com ho podem millorar?
true
Cerca
Esborra la cerca
Tanca la cerca
Menú principal
1534549599719569321
true
Cerca al Centre d'ajuda
true
true
true
true
true
69256
false
false