Iubenda logo
Inizia la generazione

Documentazione

Indice dei contenuti

Come configurare Privacy Controls and Cookie Solution (guida avanzata)

 
❗️ Aggiornamento del valore predefinito del parametro invalidateConsentWithoutLog

A partire dal 15-01-2023, il valore di default di invalidateConsentWithoutLog è cambiato ed è ora impostato a true. Ciò significa che, se hai attivato il Registro Preferenze Cookie e Consensi, per impostazione predefinita viene richiesto un nuovo consenso quando una preferenza dell’utente non viene trovata registrata all’interno dei log.

Qui troverai approfondimenti su:

💡 Preferisci una guida introduttiva a Privacy Controls and Cookie Solution? Scopri le opzioni del configuratore e come modificare aspetto e comportamento del cookie banner nella nostra guida di base.

Un veloce riassunto:

  • Si implementa inserendo un semplice codice in tutte le pagine del sito.
  • Mostra un avviso con un testo predefinito e personalizzabile e riporta un link alla cookie policy.
  • È ottimizzato per risoluzioni e device multipli.
  • Si assicura che la consultazione della cookie policy possa avvenire senza che il consenso venga fornito.
  • Si assicura che il blocco dei codici funzioni correttamente – vedi la guida introduttiva alla configurazione del blocco dei codici per ulteriori informazioni al riguardo.
  • Raccoglie la preferenza tramite proseguimento della navigazione, ad esempio lo scroll.
  • Allo scroll o al proseguimento della navigazione, attiva in modo asincrono (ovvero senza ricaricare la pagina) tutti gli script precedentemente bloccati.
  • Se la preferenza è già stata fornita, il cookie banner/banner di consenso non compare e gli script vengono eseguiti in modo automatico.

Una volta generato il tuo cookie banner/banner di consenso (Privacy Controls and Cookie Solution > Genera ora/Modifica), otterrai un codice simile:

<script type="text/javascript">
    var _iub = _iub || [];
    _iub.csConfiguration = {
        "lang": "it",
        "siteId": XXXXXX, //usa il tuo siteId
        "cookiePolicyId": YYYYYY, //usa il tuo cookiePolicyId
        "banner": {
            "position": "float-top-center",
            "acceptButtonDisplay": true,
            "customizeButtonDisplay": true
        }
    };
</script>
<script type="text/javascript" src="//cdn.iubenda.com/cs/iubenda_cs.js" charset="UTF-8" async></script>

Per mostrare il cookie banner/banner di consenso sul tuo sito, copia il codice soprastante e incollalo prima della chiusura del tag HEAD delle tue pagine, oppure usa uno dei nostri plugin per:

Abbiamo anche guide passo passo per l’integrazione su siti ad hoc, Shopify, Webflow, Wix e Squarespace. Se sei un utente Drupal, puoi usare la classe PHP disponibile via download diretto o Packagist (tutte le istruzioni nella guida dedicata).

Oltre a mostrare il cookie banner/banner di consenso, devi bloccare i cookie prima di aver ottenuto il consenso:

Molte autorità europee di protezione dei dati hanno rafforzato i requisiti richiesti e allineato le regole su cookie e tracker con il GDPR. In particolare, è richiesto di registrare e conservare prova delle preferenze espresse dagli utenti.

Clicca qui per maggiori informazioni su come attivare il Registro preferenze Cookie e Consensi all’interno della tua soluzione Privacy Controls and Cookie Solution.

Nota: tutti i parametri seguenti vanno inclusi all’interno di _iub.csConfiguration {}.

1. Parametri obbligatori

siteId – Il codice identificativo (ID) del tuo sito. Questo ID viene utilizzato per condividere la preferenza fra più cookie policy in lingue diverse che siano però riconducibili allo stesso sito/app.

cookiePolicyId – Il codice identificativo (ID) della tua cookie policy.

lang – Questo parametro definisce la lingua in cui mostrare il contenuto presente all’interno del cookie banner/banner di consenso (ad esempio, “it” per l’italiano, “en” per l’inglese, “es” per lo spagnolo ecc.). Sono disponibili per il contenuto del banner le localizzazioni relative a tutte le lingue in cui è possibile generare privacy/cookie policy con iubenda.

2. Opzioni per la compliance

countryDetection (boolean, default false) – Permette di rilevare automaticamente il paese dell’utente

Per il GDPR
Imposta questo parametro a true se gdprAppliesGlobally è settato su false e vuoi limitare il blocco preventivo e le richieste di consenso dei cookie solo agli utenti dell’UE – dove è un requisito legale – mentre vengono eseguiti normalmente gli script dei cookie nelle regioni in cui è ancora legalmente possibile farlo.
Se disabiliti questa opzione, ricordati di impostare gdprApplies:false su tutte le pagine in cui il consenso non è richiesto.

Per il CCPA
Per attivare le protezioni CCPA solo per gli utenti a cui si applica il CCPA, imposta questo parametro a true se ccpaApplies è impostato a false.

Inoltre, puoi sovrascrivere il paese rilevato passando la variabile _iub.cc nell’onload di iubenda_cs.js. Al momento i valori accettati per _iub.cc sono _iub.cc = 'EU'; (per l’Unione Europea) e delete _iub.cc; (per tutte le altre aree).

Ad esempio, per forzare l’Unione Europea dovrai scrivere:

<script type="text/javascript" src="//cdn.iubenda.com/cs/iubenda_cs.js" charset="UTF-8" onload="_iub.cc = 'EU';" async></script>

Puoi testare questa funzionalità su CodePen.

Per la LGPD
Per rispettare i requisiti della LGPD solo per gli utenti brasiliani ed eseguire normalmente gli script dei cookie dove è ancora consentito legalmente, setta il parametro a true con lgpdAppliesGlobally impostato a false.

Se disattivi questa opzione, puoi impostare lgpdApplies:false su tutte le pagine in cui i requisiti LGPD non sono rilevanti.

2.1 GDPR

enableGdpr (boolean, default true) – Se true, abilita o rende disponibili le funzionalità GDPR senza però applicarle.

gdprAppliesGlobally (boolean, default true) – Se true, applica il GDPR a tutti i tuoi utenti. Imposta questo parametro su false e countryDetection:true per chiedere il consenso solo agli utenti UE. Ricorda che se hai sede nell’UE, devi applicare il GDPR anche agli utenti residenti al di fuori dell’UE.

gdprApplies (boolean, default true) – Se false, non applica il GDPR all’utente corrente e non gli verrà mostrato il cookie banner/banner di consenso. Se hai impostato countryDetection:false, dovresti settare gdprApplies:false su tutte le pagine in cui il consenso non è richiesto.

Pulsanti (accetta, personalizza, rifiuta, chiudi) e diciture

Le seguenti opzioni vanno inserite nell’oggetto banner {}:

acceptButtonDisplay (boolean, default false) – Se impostato a true, il cookie banner mostrerà il pulsante “Accetta”.

customizeButtonDisplay (boolean, default false) – Se impostato a true, il cookie banner mostrerà il pulsante “Scopri di più e personalizza”.

rejectButtonDisplay (boolean, default false) – Se impostato a true, il cookie banner mostrerà il pulsante “Rifiuta”. Se true banner.closeButtonDisplay viene forzato a false. Guarda la demo su CodePen.

closeButtonDisplay (boolean, default true) – Se impostato a false, non verrà mostrato il pulsante di chiusura del banner.

explicitWithdrawal (boolean, default false) – Se impostato su true, viene aggiunta al testo del banner la frase: “Puoi liberamente prestare, rifiutare o revocare il tuo consenso, in qualsiasi momento“.

Consenso per categoria

perPurposeConsent (boolean, default false) – Impostando questo parametro a true fornirai agli utenti opzioni granulari rispetto alle categorie di cookie a cui prestare il consenso. Le categorie da mostrare nella modale vengono rilevate automaticamente dalla cookie policy di iubenda, ma possono essere personalizzate con il parametro purposes (vedi sotto).

Esempi:

Tagging manuale e consenso per categoria

Se hai abilitato il consenso per categoria dovrai specificare le categorie degli script da bloccare preventivamente tramite l’attributo data-iub-purposes. Leggi questa guida per maggiori istruzioni e alcuni esempi sull’uso del tagging manuale e del consenso per categoria.

purposes (string, default null) – Le finalità sono raggruppate in 5 categorie (necessari, funzionali, esperienza, misurazione, marketing), ciascuna identificata da un id (1, 2, 3, 4, 5). Per impostazione predefinita, le categorie da mostrare vengono rilevate automaticamente dalla cookie policy di iubenda, ma puoi personalizzarle con il parametro purposes (ad esempio se usi la tua cookie policy anziché quella generata da iubenda).

A seguire le finalità per ogni categoria:

  1. Necessari (id 1). Finalità incluse:
    • Salvataggio e gestione di backup
    • Hosting ed infrastruttura backend
    • Gestione di landing page e pagine di invito
    • Servizi di piattaforma e hosting
    • Protezione dallo SPAM
    • Ottimizzazione e distribuzione del traffico
    • Monitoraggio dell’infrastruttura
    • Gestione dei pagamenti
  2. Funzionali (id 2). Finalità incluse:
    • Contattare l’Utente
    • Interazione con le piattaforme di live chat
    • Gestione di conferenze web e telefonia online
    • Gestione delle richieste di supporto e contatto
    • Interazione con le piattaforme di supporto e di feedback
    • Gestione dei tag
    • Registrazione ed autenticazione
    • Gestione dei database di Utenti
  3. Esperienza (id 3). Finalità incluse:
    • Commento dei contenuti
    • Interazione con piattaforme di raccolta dati e altre terze parti
    • Visualizzazione di contenuti da piattaforme esterne
    • Interazione con social network e piattaforme esterne
    • Interazione con le piattaforme per sondaggi online
    • Gestione dei feed RSS
    • Funzionalità sociali
  4. Misurazione (id 4). Finalità incluse:
    • Statistica
    • Beta testing
    • Test di performance di contenuti e funzionalità (A/B testing)
    • Heat mapping e registrazione sessioni
    • Gestione della raccolta dati e dei sondaggi online
  5. Marketing (id 5). Finalità incluse:
    • Pubblicità
    • Infrastruttura al servizio pubblicitario
    • Affiliazione commerciale
    • Gestione contatti e invio di messaggi
    • Remarketing e behavioral targeting

Quindi, se per esempio devi mostrare tutte e 5 le categorie dovrai indicare "purposes": "1, 2, 3, 4, 5", ma se non devi mostrare Misurazione (id 4) indicherai "purposes": "1, 2, 3, 5" e così via.

Nota: affinché purposes possa funzionare correttamente, il parametro perPurposeConsent deve essere impostato a true (vedi sopra per maggiori dettagli).

listPurposes (boolean, default false) – Se true, mostra le categorie nel primo livello del cookie banner/banner di consenso (per poter funzionare correttamente, perPurposeConsent deve essere settato a true). Questa opzione va inclusa nell’oggetto banner {}.

2.2 CCPA

enableCcpa (boolean, default false) – Se true, abilita o rende disponibili le funzionalità CCPA senza però applicarle.

ccpaApplies (boolean, default undefined) – Se true, applica gli standard CCPA all’utente corrente.

ccpaNoticeDisplay (boolean, default true) – Se false, non verrà mostrato l’avviso di raccolta dati (solo se non si applica il GDPR).

ccpaAcknowledgeOnDisplay (boolean, default false) – Quando ccpaNoticeDisplay: true, permette di indicare cosa costituisce presa visione dell’informativa: se true il semplice caricamento del banner, se false (default) l’interazione con esso.

ccpaAcknowledgeOnLoad (boolean, default false) – Se true e ccpaAcknowledgeOnDisplay: false, la presa visione dell’informativa si intende recepita al caricamento della pagina.

ccpaLspa (boolean, default undefined) – Se true, indica che l’operazione deve essere eseguita sulla base del Limited Service Provider Agreement (LSPA) di IAB.

Classi

iubenda-ccpa-opt-out – Aggiungi questa classe ad un qualsiasi elemento della pagina per permettere ai tuoi utenti di opporsi alla vendita dei propri dati personali tramite l’apertura di una finestra di dialogo (link “Non vendere le mie informazioni personali”).

2.3 LGPD

enableLgpd (boolean, default false) – Se true, abilita o rende disponibili le funzionalità LGPD senza però applicarle.

lgpdAppliesGlobally ( boolean, default true) – Se true, le impostazioni LGPD vengono applicate a tutti gli utenti. Imposta questo parametro su false e countryDetection:true per richiedere il consenso LGPD solo agli utenti brasiliani.

lgpdApplies (boolean, default undefined) – Se impostato a false, le impostazioni LGPD non si applicano all’utente specifico e non viene mostrato il cookie banner/banner di consenso. Questo comportamento si applica indipendentemente dal valore di lgpdAppliesGlobally (se è impostato a true o se lgpdAppliesGlobally è impostato a false e countryDetection : true).

Nota che tutti i parametri disponibili per il GDPR possono essere utilizzati anche per la configurazione dell’LGPD.

Per poter mostrare annunci personalizzati ai propri visitatori, gli editori che si appoggiano ai maggiori network pubblicitari devono prima raccogliere il consenso alla personalizzazione degli annunci. In questa guida scoprirai come soddisfare questo requisito con il Framework di IAB e la nostra soluzione Privacy Controls and Cookie Solution.

enableTcf (boolean, default false) – Impostata su true, quest’opzione consente agli utenti di gestire le proprie preferenze di tracciamento della pubblicità sulla base dello IAB Transparency and Consent Framework.

googleAdditionalConsentMode (boolean, default false) – Se true, ti permette di raccogliere il consenso per i partner pubblicitari di Google che non hanno ancora aderito al TCF, ma che sono presenti nella lista dei fornitori di tecnologia pubblicitaria di Google.

tcfPurposes (object) – Il TCF v2.0 prevede 10 finalità, ognuna delle quali ha un id:

  1. Archiviare e/o accedere a informazioni su un dispositivo
  2. Selezionare annunci basici (basic ads)
  3. Creare un profilo di annunci personalizzati
  4. Selezionare annunci personalizzati
  5. Creare un profilo di contenuto personalizzato
  6. Selezionare contenuti personalizzati
  7. Valutare le performance degli annunci
  8. Valutare le performance dei contenuti
  9. Applicare ricerche di mercato per generare approfondimenti sul pubblico
  10. Sviluppare e perfezionare i prodotti

Con questa versione puoi:

  • limitare la base giuridica al solo consenso, al solo interesse legittimo, o a entrambi; e
  • scegliere quali finalità mostrare.

Ecco come fare. Grazie a tcfPurposes, nell’esempio a seguire:

  • non mostreremo la finalità 1 (“Archiviare e/o accedere a informazioni su un dispositivo”, impostata a consent_not_needed, possibile solo se la nostra legislazione lo permette) *,
  • non mostreremo la finalità 2 (“Selezionare annunci basici”, impostata a false),
  • limiteremo la base giuridica al solo interesse legittimo (li_only) per la finalità numero 4 (“Selezionare annunci personalizzati”), e
  • limiteremo la base giuridica al solo consenso (consent_only) per la finalità numero 7 (“Valutare le performance degli annunci”)
_iub.csConfiguration = {
    "lang": "it",
    "siteId": xxxxxx, //usa il tuo siteId
    "cookiePolicyId": yyyyyy, //usa il tuo cookiePolicyId
    "enableTcf": true,
    "tcfVersion": 2,
    ...
    "tcfPurposes": {
        "1": "consent_not_needed",
        "2": false,
        "4": "li_only",
        "7": "consent_only"
    },
    "tcfPublisherCC": "DE",
    "banner": {
        ...
    }
}

* Nota su PurposeOneTreatment: in precedenza, per alcuni paesi non era obbligatorio richiedere il consenso per la finalità 1 (“Archiviare e/o accedere a informazioni su un dispositivo”). Potevi disabilitare tale richiesta usando "1": "consent_not_needed". Tuttavia, potendo abilitare quest’opzione solo se prevista dalla normativa vigente a te applicabile e, non essendoci al momento alcun paese europeo che la supporti, ti sconsigliamo vivamente di utilizzarla.

askConsentIfCMPNotFound (boolean, default true) – Se l’opzione enableTcf è impostata su true e la preferenza del Framework IAB non viene trovata, gli utenti saranno invitati a fornire nuovamente il consenso anche se quest’ultimo è stato dato prima dell’attivazione del Framework. Se invece l’opzione è impostata su false, il comportamento descritto verrà impedito.

newConsentAtVendorListUpdate (number, default undefined) – Giorni da attendere prima di chiedere nuovamente il consenso in seguito all’aggiornamento di vendorlist.json. Se undefined, gli utenti che hanno già prestato il consenso non vedranno nuovamente il cookie banner/banner di consenso (nelle preferenze pubblicitarie i “nuovi” vendor avranno il consenso settato su off). Se impostato a 0 gli utenti dovranno prestare nuovamente il consenso non appena la lista dei vendor viene aggiornata.

tcfPublisherCC (string, default null) – Codice paese di due lettere espresso nello standard ISO 3166-1 che determina la legislazione del paese di riferimento. Normalmente coincide al codice del Paese in cui ha sede la società del publisher. È possibile utilizzare questo parametro per impostare il codice paese del publisher nella stringa di preferenze TCF quando la finalità TCF “1” è impostato su “consent_not_need“.

Classi

iubenda-advertising-preferences-link – Aggiungendo questa classe ad un elemento qualsiasi della pagina, il click sull’elemento aprirà la modale con le impostazioni di tracciamento della pubblicità salvate in precedenza (permettendo agli utenti di aggiornare le proprie preferenze pubblicitarie anche dopo aver chiuso il cookie banner/banner di consenso).

Tieni presente che in alternativa a questa classe specifica del TCF, puoi usare la classe “generica” iubenda-cs-preferences-link, il risultato sarà identico.

iubenda-vendor-list-link – Aggiungi questa classe a un qualsiasi elemento della pagina per permettere ai tuoi utenti di riaprire l’elenco dei vendor del TCF.

3. Stile e testo

3.1 Aspetto e posizione

position (string, default “float-top-center”) – Definisce la posizione del cookie banner/banner di consenso. Valori disponibili: topbottomfloat-top-leftfloat-top-rightfloat-bottom-leftfloat-bottom-rightfloat-top-centerfloat-bottom-center e float-center.

backgroundOverlay (boolean, default false) – Imposta questo parametro a true per oscurare la pagina con uno sfondo in overlay quando viene mostrato il cookie banner/banner di consenso.

3.2 Tema

logo (string) – Indirizzo (consigliato https) o equivalente in base64 dell’immagine da usare come logo nella testata del cookie banner/banner di consenso. Per una resa ottimale usa un SVG bianco su sfondo trasparente.

brandTextColor (string, default “#000”) – Colore del testo della testata della modale/cookie banner/banner di consenso.

brandBackgroundColor (string, default “#fff”) – Colore di sfondo della testata del cookie banner/banner di consenso.

Colori del banner

backgroundColor (string, default “#000”) – Il colore di sfondo del banner.

textColor (string, default “#fff”) – Il colore del testo del banner.

Pulsanti

acceptButtonColor (string, default “#0073ce”) – Colore di sfondo del pulsante “Accetta”.

acceptButtonCaptionColor (string, default “#fff”) – Colore del testo del pulsante “Accetta”.

customizeButtonColor (string, dark theme default “#212121”, light theme default “#dadada”) – Colore di sfondo del pulsante “Scopri di più e personalizza”.

customizeButtonCaptionColor (string, dark theme default “#fff”, light theme default “#4d4d4d”) – Colore del testo del pulsante “Scopri di più e personalizza”.

rejectButtonColor (string, default “#0073ce”) – Colore di sfondo del pulsante “Rifiuta”.

rejectButtonCaptionColor (string, default “#fff”) – Colore del testo del pulsante “Rifiuta”.

continueWithoutAcceptingButtonColor (string, default “#fff”) Colore di sfondo del pulsante “Continua senza accettare“.

continueWithoutAcceptingButtonCaptionColor (string, default “#000”) Colore del testo del pulsante “Continua senza accettare“.

Opzioni avanzate

applyStyles (boolean, default true) – Settando questo parametro su false, al banner non viene applicato alcuno stile/CSS. È utile settare applyStyles su false ad esempio quando si vuole dare al banner uno stile diverso da quello di default.

Come base di partenza per modificare il CSS del banner, si consiglia di utilizzare quello di default disponibile a questo indirizzo, che riapplica gli stessi stili esclusi da questa opzione ma che ha il vantaggio di essere modificabile una volta inserito nelle proprie pagine.

Esempio: banner con CSS personalizzato.

zIndex (number) – Si tratta dello z-index del div del cookie banner. Il valore di default è 99999998.

3.3 Testo

Dimensione del font

fontSize (string, default null) – La dimensione del testo del banner (incluso il tasto di chiusura). Se questa opzione è attiva gli eventuali valori presenti nelle opzioni banner.fontSizeCloseButton e banner.fontSizeBody non verranno presi in considerazione.

fontSizeCloseButton (string, default “20px”) – La dimensione del tasto di chiusura del banner.

fontSizeBody (string, default “14px”) – La dimensione del testo contenuto nel banner.

Testo del banner

content (string) – È il testo contenuto all’interno del cookie banner/banner di consenso. Per l’italiano il valore di default è:

Informativa
Noi e terze parti selezionate utilizziamo cookie o tecnologie simili per finalità tecniche e, con il tuo consenso, anche per altre finalità come specificato nella %{cookie_policy_link}.

Tieni presente che banner.content può essere usato solo per personalizzare il testo del banner e permette di impostare una formattazione speciale del testo con tag HTML, ma se vuoi modificare la struttura del banner (ad esempio, aggiungendo pulsanti o layout speciali), usa banner.html.

Shortcode

Gli shortcode sono delle parole speciali che possono essere usate dentro banner.content e banner.html come placeholder per qualcos’altro. Puoi usarli per personalizzare il cookie banner ma al tempo stesso preservare gli elementi dell’interfaccia che ne garantiscono il corretto comportamento.

Shortcode disponibili per banner.content:

  • %{cookie_policy_link} viene sostituito con il link alla cookiePolicyUrl e con il testo indicato all’interno di banner.cookiePolicyLinkCaption
  • %{advertising_preferences_link} viene sostituito con il link al widget del Transparency and Consent Framework
  • %{vendor_list_link} viene sostituito con il link alla lista dei fornitori di servizi pubblicitari del Transparency and Consent Framework
  • %{privacy_policy} viene sostituito con il link alla privacy policy (richiesto dal CCPA)
  • %{do_not_sell} viene sostituito con il link per l’opt-out della vendita dei dati (CCPA)

Esempio di cookie banner/banner di consenso con HTML e contenuto personalizzati

Note

  • %{cookie_policy_link} è lo shortcode in cui viene inserito il link alla cookie policy. Ricorda che di default la cookie policy linkata nel banner è quella ospitata sui nostri spazi. Per modificare il comportamento di default, personalizza il parametro cookiePolicyUrl (fai riferimento alla sezione dedicata per ulteriori informazioni sul parametro cookiePolicyUrl).
  • Il contenuto del cookie banner/banner di consenso viene localizzato in tutte le lingue disponibili nel generatore (la lingua in cui mostrare il contenuto del cookie banner è definita attraverso il parametro lang).
  • Se hai attivato il Transparency and Consent Framework, avrai notato che il testo del banner diventa piuttosto lungo, così da poter soddisfare i requisiti dello IAB. Controllali attentamente prima di modificare il contenuto.
  • Per garantire la corretta visualizzazione della Cookie Policy, la classe iubenda-cs-cookie-policy-lnk non deve essere utilizzata altrove nella pagina.

acceptButtonCaption (string, default “Accept”) – Testo del pulsante “Accetta”.

customizeButtonCaption (string, default “Learn more and customize”) – Testo del pulsante “Scopri di più e personalizza”.

rejectButtonCaption (string, default “Reject”) – Testo del pulsante “Rifiuta”.

closeButtonCaption (string, default “x”) – Il testo del bottone di chiusura del banner (in precedenza innerHtmlCloseBtn).

continueWithoutAcceptingButtonCaption (string, default “Continua senza accettare“) Il testo del pulsante “Continua senza accettare”.

useThirdParties (boolean, default true) se impostato a false, ogni menzione alle terze parti e all’uso dei cookie e strumenti di tracciamento di terza parte viene rimosso dal testo del banner.

Opzioni avanzate

html(string, default null) – È l’HTML del banner, che attraverso questo parametro può essere sostituito a quello di default.

Nota: alcuni elementi sono comunque necessari per il corretto funzionamento del banner, in particolare:

  • div.iubenda-cs-content (il container principale)
  • a.iubenda-cs-cookie-policy-lnk (il link con href settato per puntare alla cookie policy, ad esempio https://www.iubenda.com/privacy-policy/123456/cookie-policy?an=no&s_ck=false)
Shortcode

Gli shortcode sono delle parole speciali che possono essere usate dentro banner.content e banner.html come placeholder per qualcos’altro. Puoi usarli per personalizzare il cookie banner/banner di consenso ma al tempo stesso preservare gli elementi dell’interfaccia che ne garantiscono il corretto comportamento.

Shortcode disponibili per banner.html:

%{banner_content} viene sostituito col valore specificato all’interno di banner.content (o il contenuto di default). Tieni però presente che %{banner_content} è obbligatorio nel caso tu abbia attivato il TCF v2 (a meno che non abbiamo preventivamente approvato il tuo testo personalizzato).

Esempio di cookie banner/banner di consenso con HTML e contenuto personalizzati.

footer {} (object) – Le seguenti opzioni vanno incluse all’interno dell’oggetto footer {}.

btnCaption (string) – Testo del pulsante in fondo al pannello delle impostazioni di tracciamento (vedi consenso per categoria) per salvare le preferenze di consenso. Il valore predefinito è “Salva e continua”.

i18next

i18n {} (object) – Grazie alla libreria JavaScript i18n puoi tradurre/modificare ogni elemento testuale di Privacy Controls and Cookie Solution. Trovi l’elenco completo degli elementi editabili in questo file JSON.

Importante: se hai abilitato il Transparency and Consent Framework, per poter soddisfare i requisiti dello IAB, sei obbligato a usare le traduzioni ufficiali (vedi “List of translations for purpose descriptions v2.0”).

3.4 Widget privacy

floatingPreferencesButtonDisplay (string, default false) – Definisce la posizione del widget privacy (una funzione che permette ai tuoi visitatori di aggiornare le proprie preferenze di consenso espresse in precedenza).

Valori possibili: falsetruetop-lefttop-rightbottom-leftbottom-right (posizione predefinita se settato a true), anchored-center-leftanchored-center-rightanchored-top-leftanchored-top-rightanchored-bottom-leftanchored-bottom-right.

Aspetto e Posizione

floatingPreferencesButtonCaption (string, default false) – Testo del widget privacy.

floatingPreferencesButtonIcon (boolean, default true) – Mostra o meno l’icona del widget privacy.

floatingPreferencesButtonHover (boolean, default false) – Mostra il testo del widget privacy al passaggio del mouse.

floatingPreferencesButtonRound (boolean, default false) – Aggiunge l’attributo iubenda-tp-circle al widget privacy.

floatingPreferencesButtonZIndex (default 2147483647) – Puoi usare questa opzione per applicare uno zIndex personalizzato al widget privacy. Può essere utile se si verificano problemi di sovrapposizione.

floatingPreferencesButtonColor (string, default “#fff”) – Colore di sfondo del widget privacy.

floatingPreferencesButtonCaptionColor (string, default “#000”) – Colore del testo del widget privacy.

privacyPolicyUrl (string) – Permette di personalizzare il link della privacy policy.

cookiePolicyUrl (string) – Si tratta dell’URL della cookie policy linkata all’interno del banner. È disponibile nella pagina di editing della tua privacy policy, in particolare nella tab “Integrazione > Cookie Policy”. Se non definisci questo parametro, di default il banner rimanda alla cookie policy generata tramite iubenda ed ospitata sui nostri spazi. Puoi scegliere in alternativa di ospitare la cookie policy su una pagina del tuo sito, specificandone il relativo URL attraverso il parametro cookiePolicyUrl.

Ricorda che se decidi di ospitare la cookie policy su una tua pagina, questa non deve fare uso di cookie (eccetto quelli tecnici).

Nota: il parametro cookiePolicyUrl è inefficace se stai utilizzando HTML custom per il banner (vedi la configurazione banner.html).

cookiePolicyInOtherWindow (boolean, default false) – Imposta questo parametro a true se vuoi che privacy policy e cookie policy vengano aperte in un’altra finestra anziché nella lightbox/modale di iubenda.

cookiePolicyLinkCaption (string) – Anchor text del link alla cookie policy (il valore di default è “cookie policy”). Questa opzione va inclusa nell’oggetto banner {}.

5. Opzioni avanzate

5.1 Impostazioni del banner

Le seguenti opzioni vanno inserite nell’oggetto banner {}:

slideDown (boolean, default true) – È possibile settare questo parametro su false per disabilitare l’animazione iniziale del banner.

prependOnBody (boolean, default false) – Settando prependOnBody su true, il codice HTML del banner viene iniettato all’interno del sito come primo elemento del BODY. Di default, invece, prependOnBody è impostato su false ed il banner viene inserito come ultimo elemento del BODY.

È necessario impostare il prependOnBody su true ad esempio quando si desidera posizionare il banner al di sopra dell’header. In questo modo il banner sarà il primo elemento della pagina e, per visualizzarlo sopra l’header, basterà applicare un padding-top all’elemento successivo: #iubenda-cs-banner + * { padding-top: 180px; }

Esempio con banner posizionato sopra l’header.

5.2 Opzioni per la raccolta del consenso

reloadOnConsent (boolean, default false) – Imposta questo parametro a true se vuoi che la pagina venga ricaricata dopo aver raccolto il consenso dell’utente.

askConsentAtCookiePolicyUpdate (boolean, default false) – Imposta questo parametro a true se vuoi richiedere un nuovo consenso all’aggiornamento della Cookie Policy.

enableRemoteConsent (boolean, default false) – Imposta questo parametro a true per abilitare la registrazione del consenso cross-site (utile ad esempio quando lo script viene implementato su più siti del medesimo network). Quando enableRemoteConsent è settato a true la nostra soluzione crea un cookie (tecnico) sul dominio iubenda.com che viene letto quando il cookie sul dominio locale non viene trovato.

invalidateConsentWithoutLog (boolean, string, date, default true). Se il parametro è impostato a true, quando una preferenza dell’utente non viene trovata registrata all’interno del Registro Preferenze Cookie e Consensi, viene richiesto un nuovo consenso. 
Se viene settata una data (formato: “yyyy-mm-dd”), verrà richiesto un nuovo consenso all’utente quando la preferenza espressa prima della data impostata non viene trovata all’interno del Registro Preferenze Cookie e Consensi. (es. invalidateConsentWithoutLog: "2022-01-10“)

googleConsentMode (boolean, default null). Quando è impostato a null Privacy Controls and Cookie Solution rileva automaticamente se attivare il Google Consent Mode (se viene trovata una variabile window.dataLayer o una funzione gtag).
Se impostato a true Privacy Controls and Cookie Solution attiva sempre il Google Consent Mode e definisce una variabile globale window.dataLayer se non è già definita.
Se impostato a false Privacy Controls and Cookie Solution disabilita sempre il Consent Mode.
Imposta questo parametro a template se utilizzi il template Privacy Controls and Cookie Solution di Google Tag Manager e vuoi integrare il codice di Privacy Controls and Cookie Solution manualmente (come spiegato in questa sezione).

5.3 Sviluppo

inlineDelay (integer, milliseconds, default 500) – Il tempo massimo che intercorre tra le attivazioni dagli snippet taggati con la classe _iub_cs_activate-inline (gli snippet taggati in questo modo vengono infatti attivati in sequenza). Diminuendo questo valore si abbrevia il tempo totale di attivazione.

Attenzione: Il suo valore di default è stabilito in modo che tutti gli snippet censiti si attivino correttamente; ridurlo potrebbe impedire la corretta attivazione di alcuni snippet. Si consiglia altamente di verificare l’attivazione degli snippet presenti nella propria pagina se questa impostazione viene modificata.

rebuildIframe (boolean, default true) – Una volta registrato il consenso dell’utente, Privacy Controls and Cookie Solution rigenera (o reintegra) gli iframe precedentemente modificati. Impostando questo parametro su false, gli iframe precedentemente bloccati vengono ripristinati dopo la raccolta del consenso.

Callback

callback {} (object) – È il parametro attraverso cui è possibile definire le callback che Privacy Controls and Cookie Solution di iubenda può eseguire al verificarsi di un evento.

onReady (function) – Se il consenso dell’utente non è stato ancora raccolto (ad esempio perché è alla sua prima visita), la callback onReady viene invocata non appena il cookie banner viene visualizzato; se invece l’utente ha già prestato il proprio consenso all’installazione dei cookie, questa callback viene invocata non appena Privacy Controls and Cookie Solution di iubenda è inizializzata. Il consenso prestato o meno viene passato come argomento, true o false.

onBannerShown (function) – Tramite questa funzione puoi eseguire uno script nel momento in cui il banner viene mostrato.

onBannerClosed (function) – Con questa funzione puoi eseguire uno script alla chiusura del banner.

onCookiePolicyShown (function) – Invocata quando la cookie policy viene mostrata (sia nella modale che in una pagina separata).

onConsentGiven (function) – Questa callback viene invocata se l’utente ha prestato il proprio consenso all’installazione dei cookie, sia quando acconsente per la prima volta che in tutte le successive visite.

onConsentFirstGiven (function) – Invocata la prima volta che l’utente presta il proprio consenso e ogni volta che l’utente aggiorna le sue preferenze (per esempio cliccando su iubenda-cs-preferences-link e salvando le nuove preferenze). Una delle seguenti stringhe viene passata come argomento: documentScrolldocumentMovedbannerXClosedocumentClicked o cookiePolicyClosed.

onConsentRejected (function) – Questa callback viene invocata se l’utente ha negato il proprio consenso all’installazione dei cookie.

onConsentFirstRejected (function) – Invocata la prima volta che l’utente nega il proprio consenso e ogni volta che l’utente aggiorna le sue preferenze (per esempio cliccando su iubenda-cs-preferences-link e salvando le nuove preferenze).

onPreferenceExpressed (function) – Invocata qualunque sia la preferenza espressa dall’utente in merito all’installazione dei cookie.

onPreferenceFirstExpressed (function) – Invocata la prima volta che l’utente esprime la propria preferenza e ogni volta che l’utente aggiorna le sue preferenze (per esempio cliccando su iubenda-cs-preferences-link e salvando le nuove preferenze).

onPreferenceExpressedOrNotNeeded (function) – Invocata quando la preferenza è stata espressa o non è necessaria, ad esempio se:

  • gdprApplies:true e l’utente ha espresso la propria preferenza, oppure
  • gdprApplies:false, oppure
  • gdprAppliesGlobally:false, countryDetection:true e l’utente ha sede fuori dall’UE

onPreferenceNotNeeded (function) – Invocata quando la preferenza non è necessaria, ad esempio se:

  • gdprApplies:false, oppure
  • gdprAppliesGlobally:false, countryDetection:true e l’utente ha sede fuori dall’UE

onConsentRead (function) – Invocata la prima volta che l’utente presta consenso e ad ogni caricamento successivo quando il consenso viene rilevato. La callback onConsentGiven diviene un alias di onConsentRead e non viene invocata se quest’ultima è definita.

onStartupFailed (function) – Invocata nel caso in cui Privacy Controls and Cookie Solution di iubenda fallisse la fase di startup. Un messaggio di errore viene passato come argomento.

onError (function) – Invocata nel caso in cui Privacy Controls and Cookie Solution di iubenda riscontri un errore. Un messaggio di errore viene passato come argomento.

onFatalError (function) – Invocata nel caso in cui Privacy Controls and Cookie Solution di iubenda riscontri un errore che non le consente di proseguire. Un messaggio di errore viene passato come argomento.

onActivationDone (function) – Invocata quando l’attivazione degli snippet è completata.

onBeforePreload (function) – Invocata al precaricamento di Privacy Controls and Cookie Solution (prima cioè che vengano caricati i cookie).

onCcpaAcknowledged (function) – Invocata quando l’utente ha preso visione dell’avviso CCPA.

onCcpaFirstAcknowledged (function) – Invocata la prima volta che l’utente ha preso visione dell’avviso CCPA.

onCcpaOptOut (function) – Invocata quando l’utente ha fatto opt-out.

onCcpaFirstOptOut (function) – Invocata la prima volta in cui l’utente ha fatto opt-out e ogni volta che l’utente aggiorna le sue preferenze (per esempio cliccando su iubenda-ccpa-opt-out e salvando le nuove preferenze).

on2ndLayerShown (function) – Invocata quando viene visualizzato il secondo livello del banner.

onCookiePolicyShown (function) – Invocata quando viene mostrata la cookie policy (in una finestra modale o in una pagina separata).

Vedi una configurazione di esempio ↓

Debugging

skipSaveConsent (boolean, default false) – Settando questo parametro su true, si fa in modo che il consenso non venga salvato nel cookie di preferenza.

logLevel (string) – Definisce la verbosità del logger (valori disponibili: debuginfowarnerrorfatal; il valore di default è noLog).

preferenceCookie {} (object) – È il parametro attraverso cui personalizzare la durata del cookie di preferenza installato da iubenda sul browser dell’utente nel momento in cui ne viene registrato il consenso. L’oggetto da definire è expireAfter.

expireAfter (number, default 365) – Rappresenta il numero di giorni di validità del consenso prestato dall’utente su un dato sito web. Questo valore si aggiorna ad ogni successiva visita dell’utente.

ccpaCookie {} (object) – Permette di personalizzare la scadenza del cookie che memorizza la presa visione dell’avviso. In particolare, l’oggetto da definire è expireAfter.

expireAfter (number, default 365) – Numero di giorni di validità.

Consenso in locale

localConsentDomain (string, default null) – Il domino sul quale si vuole che venga salvato il consenso fornito dall’utente. Se questo parametro non viene settato, il consenso viene salvato di default in un cookie nel dominio di secondo livello della pagina corrente (ad esempio, visitando www.example.com, il consenso viene salvato in un cookie nel dominio example.com).

Nel caso in cui il comportamento di default non sia adeguato, ad esempio se il sito è www.paesaggiurbani.italia.it e il consenso deve essere fornito per paesaggiurbani.italia.it (e non per italia.it), occorre settare il localConsentDomain col valore paesaggiurbani.italia.it

Nota: qualora in uno scenario analogo a quello descritto con l’esempio www.paesaggiurbani.italia.it il parametro localConsentDomain non dovesse essere fornito, il banner potrebbe continuare a comparire al medesimo utente ad ogni successiva visita/visualizzazione di pagina.

localConsentDomainExact (boolean, default null) – Permette di specificare il dominio esatto in cui vuoi salvare il consenso prestato dall’utente.

Nota: se sono configurate entrambe le opzioni (localConsentDomain e localConsentDomainExact, verrà considerata solo l’opzione localConsentDomainExact.

localConsentPath (string, default ‘/’) – Il path nel quale si vuole che venga salvato, nel dominio locale, il consenso fornito dall’utente. Di default, il consenso fornito dall’utente viene salvato nel dominio locale in un cookie nel path ‘/’. In questo modo il cookie è disponibile qualunque sia la pagina del dominio cui si accede.

Se invece si vuole, ad esempio, che il cookie di preferenza settato per www.example.com/percorso1 non sia accessibile navigando su www.example.com/percorso2, e viceversa, occorrerà fornire a questo parametro il valore /percorso1 nel primo caso ed il valore /percorso2 nel secondo caso.

Altri parametri

whitelabel (boolean, default true) – Settando questo parametro a false verrà mostrato un riferimento commerciale a iubenda nel secondo livello.

invalidateConsentBefore (“YYYY-MM-DD”, milliseconds from epoch, default null) – Tutti i consensi raccolti prima di questa data saranno revocati. I consensi raccolti da questa data in poi saranno invece considerati validi.

maxCookieSize (number, default 4096) – Per evitare che i browser rifiutino cookie più lunghi di 4096 caratteri, Privacy Controls and Cookie Solution ti permette di dividerli in più blocchi. Grazie a maxCookieSize puoi configurare la lunghezza massima di ogni blocco (vedi anche maxCookieChunks).

maxCookieChunks (number, default 5) – Con questo parametro puoi configurare il numero massimo di blocchi in cui dividere i cookie (vedi anche maxCookieSize).

Nota: se il cookie da salvare è più lungo di maxCookieSize * maxCookieChunks (20480 caratteri con i valori predefiniti), allora quest’ultimo non verrà salvato.

timeoutLoadConfiguration (integer, milliseconds, default 30000) – Il tempo massimo che la configurazione in remoto attende prima di dichiarare che si è verificato un timeout. In caso di rete lenta, incrementando questo valore, ti assicurerai che Privacy Controls and Cookie Solution riceva in tempo le risorse necessarie al suo funzionamento.

startOnDomReady (boolean, default true) – Se true il rendering del banner e/o l’attivazione degli snippet bloccati verranno eseguiti non appena lo stato del documento risulta essere ‘caricato’ (ovvero quando il DOM raggiunge lo stato loaded). Se invece l’opzione è impostata su false, allora Privacy Controls and Cookie Solution partirà quando la pagina è stata interamente caricata (ovvero quando lo stato del DOM risulta essere completed e tutte le risorse incluse in pagina sono state caricate).

Classi

iubenda-cs-close-btn – Aggiungendo questa classe a un elemento qualsiasi della pagina, il click sull’elemento chiude il banner e assume consenso fornito (in maniera equivalente al click sul pulsante X di default del banner).

Attenzione: In Europa alcune autorità nazionali per la protezione dei dati NON ammettono questo meccanismo di consenso, perciò devi valutare attentamente quest’aggiunta in base alla legge applicabile a te.

iubenda-cs-cookie-policy-lnk – Aggiungendo questa classe a un elemento qualsiasi della pagina, il click sull’elemento permette la visualizzazione della Cookie Policy (in maniera equivalente al click sul link alla Cookie Policy presente nel banner).

Nota: per garantire la corretta visualizzazione della Cookie Policy, la classe iubenda-cs-cookie-policy-lnk (assegnata al link della Cookie Policy nel banner) non deve essere utilizzata altrove nella pagina.

iubenda-cs-preferences-link – Aggiungi questa classe a un qualsiasi elemento della pagina per permettere ai tuoi utenti di riaprire il cookie banner/banner di consenso ed aggiornare le preferenze di consenso ai cookie espresse in precedenza.

5.4 Esempi

Ecco un esempio di configurazione di Privacy Controls and Cookie Solution di iubenda con parametri facoltativi:

<script type="text/javascript">
    var _iub = _iub || [];
    _iub.csConfiguration = {
        "lang": "en",
        "siteId": 896537, //usa il tuo siteId
        "cookiePolicyId": 8207462, //usa il tuo cookiePolicyId
        "enableRemoteConsent": "false",
        "banner": {
            "position": "top",
            "slideDown": "false",
            "content": "This website or its third-party tools use cookies. Please refer to the %{cookie_policy_link} if you want to learn more or withdraw your consent.",
            "cookiePolicyLinkCaption": "cookie policy",
            "backgroundColor": "#CCC",
            "textColor": "#000",
            "fontSize": "14px",
            "innerHtmlCloseBtn": "OK"
        },
        "callback": {
            "onPreferenceExpressed": function(preference) {
                console.log('onPreferenceExpressed', preference);
            }
        },
        "preferenceCookie": {
            "expireAfter": 180
        }
    };
</script>
<script type="text/javascript" src="//cdn.iubenda.com/cs/iubenda_cs.js" charset="UTF-8" async></script>

Altri esempi di possibili configurazioni:

5.5 Avvisi personalizzati per gli snippet bloccati

Puoi mostrare un avviso personalizzato che sostituisca un contenuto che non puoi mostrare fino a quando non viene dato il consenso, o quando il consenso è stato rifiutato per quello scopo e il contenuto viene quindi bloccato da Privacy Controls and Cookie Solution.

Per farlo, crea un elemento <div>, con l’avviso personalizzato che vuoi visualizzare al posto del contenuto non disponibile, e uno script associato al blocco preventivo che rimuove il <div>, una volta che il consenso è stato ottenuto.

Esempio

<div id="content-before-consent">This will be removed as
soon as the user gives consent to purpose X</div>
      // Where X is the purpose for which consent needs to be given to
         run that script

<script type="text/plain" class="_iub_cs_activate" data-iub-purposes="X">
     // Where X is the purpose for which consent needs to be given to
        run that script

  ;(function() {
    var divToRemove = document.getElementById('content-before-consent');
    if (divToRemove && divToRemove.parentNode) {
      divToRemove.parentNode.removeChild(divToRemove);
    }
  })();
</script>

5.6 Attivatore inline

È possibile includere direttamente in pagina (inline) la parte di codice che si occupa dell’attivazione degli script; definiamo questo codice attivatore inline. Tramite l’attivatore inline gli script potranno essere attivati anche nel caso in cui la risorsa principale iubenda_cs.js risulti essere non disponibile o in errore.

L’attivatore inline garantisce unicamente l’attivazione degli script, potendo anche assumere il consenso fornito (si veda l’opzione seguente forceSafeActivation). Non è in grado di mostrare il banner, la cookie policy e gestire la raccolta del consenso fornito.

Va dunque inteso unicamente come ulteriore misura precauzionale nel caso di errori, e non sostituisce in nessun modo il codice principale di Privacy Controls and Cookie Solution di iubenda.

Da notare che l’attivatore inline è in grado di invocare la sola callback onActivationDone, le altre callback saranno invece ignorate.

Sono disponibili due ulteriori opzioni di configurazione specifiche per l’attivatore inline:

  • safeTimeout (millisecondi, default 0) – Il tempo che l’attivatore inline attende prima di entrare in azione (ed eventualmente prima di attivare gli script; si veda anche l’opzione seguente).
  • forceSafeActivation (boolean, default false) – Se true gli script vengono attivati indipendentemente dal consenso fornito. Se false l’attivatore inline attiva gli script solo se il consenso è stato fornito (e memorizzato nel cookie di preferenza nel dominio della pagina ospite).

L’attivatore inline è disponibile ai seguenti indirizzi:

IAB Transparency and Consent Framework

Se hai attivato il supporto al Transparency and Consent Framework (TCF) per la personalizzazione delle preferenze pubblicitarie, puoi usare l’attivatore inline sia per safe.js che per safe-tcf-v2.js.

safe-tcf-v2.js è disponibile ai seguenti indirizzi:

Esempi

Il contenuto di safe.js (e, eventualmente, di safe-tcf-v2.js) va incluso in pagina dopo le configurazioni iniziali e prima del codice che carica la risorsa iubenda_cs.js.

CURRENT
<script type="text/javascript">
    var _iub = _iub || [];
    _iub.csConfiguration = {
        "lang": "it",
        "siteId": XXXXXX, //usa il tuo siteId
        "cookiePolicyId": YYYYYY, //usa il tuo cookiePolicyId
        "banner": {
            "position": "float-top-center",
            "acceptButtonDisplay": true,
            "customizeButtonDisplay": true
        }
    };
    _iub.csConfiguration.safeTimeout = 500; //valore personalizzato
    _iub.csConfiguration.forceSafeActivation = false; //valore personalizzato
</script>

<script type="text/javascript">
    //<![CDATA[
    //copia il contenuto di cdn.iubenda.com/cs/safe.js e incollalo qui
    //]]>
</script>

<script type="text/javascript" src="//cdn.iubenda.com/cs/iubenda_cs.js" charset="UTF-8" async></script>

Esempio di configurazione con il supporto al framework di IAB:

<script type="text/javascript">
    var _iub = _iub || [];
    _iub.csConfiguration = {
        "lang": "it",
        "enableTcf": true,
        "siteId": XXXXXX, //usa il tuo siteId
        "cookiePolicyId": YYYYYY, //usa il tuo cookiePolicyId
        "banner": {
            "position": "float-top-center",
            "acceptButtonDisplay": true,
            "customizeButtonDisplay": true
        }
    };
</script>
<script type="text/javascript" src="//cdn.iubenda.com/cs/tcf/stub-v2.js"></script>

<!-- attivatore inline - safe.js (canale current) -->
<script type="text/javascript">
    //<![CDATA[
    //copia il contenuto di cdn.iubenda.com/cs/safe.js e incollalo qui
    //]]>
</script>

<!-- attivatore inline - safe-tcf-v2.js (canale current) -->
<script type="text/javascript">
    //<![CDATA[
    //copia il contenuto di cdn.iubenda.com/cs/tcf/safe-tcf-v2.js e incollalo qui
    //]]>
</script>

<script type="text/javascript" src="//cdn.iubenda.com/cs/iubenda_cs.js" charset="UTF-8" async></script>
BETA
<script type="text/javascript">
    var _iub = _iub || [];
    _iub.csConfiguration = {
        "lang": "it",
        "siteId": XXXXXX, //usa il tuo siteId
        "cookiePolicyId": YYYYYY, //usa il tuo cookiePolicyId
        "banner": {
            "position": "float-top-center",
            "acceptButtonDisplay": true,
            "customizeButtonDisplay": true
        }
    };
    _iub.csConfiguration.safeTimeout = 500; //valore personalizzato
    _iub.csConfiguration.forceSafeActivation = false; //valore personalizzato
</script>

<script type="text/javascript">
    //<![CDATA[
    //copia il contenuto di cdn.iubenda.com/cs/beta/safe.js e incollalo qui
    //]]>
</script>

<script type="text/javascript" src="//cdn.iubenda.com/cs/beta/iubenda_cs.js" charset="UTF-8" async></script>

Esempio di configurazione con il supporto al framework di IAB:

<script type="text/javascript">
    var _iub = _iub || [];
    _iub.csConfiguration = {
        "lang": "it",
        "enableTcf": true,
        "siteId": XXXXXX, //usa il tuo siteId
        "cookiePolicyId": YYYYYY, //usa il tuo cookiePolicyId
        "banner": {
            "position": "float-top-center",
            "acceptButtonDisplay": true,
            "customizeButtonDisplay": true
        }
    };
</script>
<script type="text/javascript" src="//cdn.iubenda.com/cs/tcf/beta/stub-v2.js"></script>

<!-- attivatore inline - safe.js (canale beta) -->
<script type="text/javascript">
    //<![CDATA[
    //copia il contenuto di cdn.iubenda.com/cs/beta/safe.js e incollalo qui
    //]]>
</script>

<!-- attivatore inline - safe-tcf-v2.js (canale beta) -->
<script type="text/javascript">
    //<![CDATA[
    //copia il contenuto di cdn.iubenda.com/cs/tcf/beta/safe-tcf-v2.js e incollalo qui
    //]]>
</script>

<script type="text/javascript" src="//cdn.iubenda.com/cs/beta/iubenda_cs.js" charset="UTF-8" async></script>
STABLE
<script type="text/javascript">
    var _iub = _iub || [];
    _iub.csConfiguration = {
        "lang": "it",
        "siteId": XXXXXX, //usa il tuo siteId
        "cookiePolicyId": YYYYYY, //usa il tuo cookiePolicyId
        "banner": {
            "position": "float-top-center",
            "acceptButtonDisplay": true,
            "customizeButtonDisplay": true
        }
    };
    _iub.csConfiguration.safeTimeout = 500; //valore personalizzato
    _iub.csConfiguration.forceSafeActivation = false; //valore personalizzato
</script>

<script type="text/javascript">
    //<![CDATA[
    //copia il contenuto di cdn.iubenda.com/cs/safe.js e incollalo qui
    //]]>
</script>

<script type="text/javascript" src="//cdn.iubenda.com/cs/stable/iubenda_cs.js" charset="UTF-8" async></script>

Esempio di configurazione con il supporto al framework di IAB:

<script type="text/javascript">
    var _iub = _iub || [];
    _iub.csConfiguration = {
        "lang": "it",
        "enableTcf": true,
        "siteId": XXXXXX, //usa il tuo siteId
        "cookiePolicyId": YYYYYY, //usa il tuo cookiePolicyId
        "banner": {
            "position": "float-top-center",
            "acceptButtonDisplay": true,
            "customizeButtonDisplay": true
        }
    };
</script>
<script type="text/javascript" src="//cdn.iubenda.com/cs/tcf/stable/stub-v2.js"></script>

<!-- attivatore inline - safe.js (canale stable) -->
<script type="text/javascript">
    //<![CDATA[
    //copia il contenuto di cdn.iubenda.com/cs/stable/safe.js e incollalo qui
    //]]>
</script>

<!-- attivatore inline - safe-tcf-v2.js (canale stable) -->
<script type="text/javascript">
    //<![CDATA[
    //copia il contenuto di cdn.iubenda.com/cs/tcf/stable/safe-tcf-v2.js e incollalo qui
    //]]>
</script>

<script type="text/javascript" src="//cdn.iubenda.com/cs/stable/iubenda_cs.js" charset="UTF-8" async></script>

Il codice dell’attivatore è parte integrate di Privacy Controls and Cookie Solution di iubenda e come tale può essere modificato al fine di introdurre nuove feature, miglioramenti e bugfix.

Al fine di facilitare il controllo della versione dell’attivatore integrato nella propria pagina, è disponibile la variabile _iub.csSafeActivatorVersion che riporta la versione di iubenda_cs.js dalla quale l’attivatore è stato estratto.

5.7 API

Grazie alle API JS puoi interagire con alcune delle funzioni principali di Privacy Controls and Cookie Solution di iubenda.

Sintassi: _iub.cs.api.METHOD_NAME

I metodi disponibili sono:

printErrors() – Stampa gli eventuali errori di Privacy Controls and Cookie Solution di iubenda sulla console del browser.

showCP() – Mostra la Cookie Policy (in modo simile a quando si clicca sul link alla Cookie Policy nel banner o su un altro link con la classe iubenda-cs-cookie-policy-lnk.

openPreferences() – Permette agli utenti di aggiornare le preferenze di consenso anche dopo aver chiuso il cookie banner (analogamente a quando cliccano su un elemento con la classe iubenda-cs-preferences-link).

resetCookies() Uas questo metodo per resettare le preferenze di consenso ai cookie

showTcfVendors() – Riapre la lista dei vendor del TCF (analogamente a quando gli utenti cliccano su un elemento con la classe iubenda-vendor-list-link).

consentGiven() – Fornisce il consenso. Il metodo accetta come parametri facoltativi:

  • eventName (stringa) – Uno tra i seguenti: documentClicked (default), documentScrolleddocumentMovedbannerXclosecookiePolicyClosed; indica il tipo di azione attraverso la quale il consenso viene fornito.
  • force (boolean)true | false (default) – Se false, iubenda CS si assicura che il banner sia mostrato prima di recepire effettivamente il consenso; invece, fornendo questa opzione a true, il consenso viene recepito in ogni caso.Nota: la chiamata a questo metodo assume il consenso fornito in maniera del tutto equivalente a quando lo si fornisce via UI, ad es. con lo scrolling della pagina. Pertanto tutte le azioni a valle del consenso fornito sono eseguite, tra cui l’aggiornamento del cookie di preferenza, l’attivazione degli snippet bloccati preventivamente e l’invocazione delle callback onConsentFirstGiven e onConsentRead. Per la sola attivazione delle snippet è a disposizione il metodo activateSnippets().

activateSnippets() – Attiva gli snippet bloccati preventivamente. Nota: questo metodo può essere richiamato ripetutamente: gli snippet già attivati non verranno presi in considerazione. È utile ad esempio quando, a consenso raccolto, si aggiungono dinamicamente alla pagina (via lazy loading o infinite scrolling) contenuti bloccati da attivare. Se l’opzione runOnActivationDoneCallback (boolean, default false), è true eseguirà la callback onActivationDone al completamento dell’attivazione degli snippet.

isConsentGiven() (DOMElement, default window.document) – Restituisce true se il consenso è stato dato, altrimenti false.Nota: non puoi usare questa funzione se hai settato banner.rejectButtonDisplay: true oppure perPurposeConsent: true. Inoltre, se hai attivato il Transparency and Consent Framework, devi necessariamente aggiungere l’attivatore sincrono (safe-tcf-v2.js).

setConsentOnScrollOnElement() (boolean) – La chiamata a questo metodo definisce l’elemento sul quale verrà osservato lo scroll ai fini del consenso.Nota: questo metodo è utile quando si vuole usufruire dell’opzione consentOnScrollOnElement ma il DOMelement non è ancora disponibile quando Privacy Controls and Cookie Solution viene inizializzata. A tal proposito è possible utilizzare la callback onBannerShow (esempio) che avviene ad inizializzazione della CS completata.

storeConsent() – Salva il consenso nei cookie. Se ad esempio vuoi migrare i consensi dal precedente provider, potresti voler chiamare questo metodo nella callback onBeforePreload se il consenso risulta essere già stato prestato sull’altra piattaforma.Inoltre, se sei un fornitore di servizi pubblicitari (vendor), puoi sfruttare storeConsent() per testare la nostra soluzione (vedi questa demo su CodePen).

gdprApplies() (boolean) – Restituisce true se gli standard GDPR si applicano all’utente corrente, altrimenti false.

ccpaApplies() (boolean) – Restituisce true se gli standard CCPA si applicano all’utente corrente, altrimenti false.

askCcpaOptOut() – Apre la finestra di dialogo per richiedere conferma dell’opt-out della vendita dei dati.

isCcpaAcknowledged() – Restituisce se l’avviso CCPA è stato mostrato.

isCcpaOptedOut() – Restituisce se l’utente ha fatto opt-out.

Nota: puoi chiamare le API di Privacy Controls and Cookie Solution anche da un iframe.

Leggi anche