Come ho integrato il banner del consenso cookies in Hugo
La normativa sulla privacy GDPR definisce alcune regole, chiare e precise, che il tuo sito web deve rispettare per essere pienamente conforme, o fully compliant per chi preferisce dirlo in Inglese.
Tra le varie definizioni della normativa vi è quella della presenza obbligatoria del banner informativo che ormai sei abituato a vedere in quasi tutti i siti che visiti, spesso anche particolarmente invadenti e fastidiosi. Il banner ti deve fornire il link alla privacy policy completa del sito, con l’elenco dei cookie e dei servizi di terze parti che utilizza.
Il consenso da parte dell’utente deve essere attivo, cioè deve esplicitamente autorizzare il sito all’utilizzo dei cookie (almeno quelli non tecnici) con un’azione: click sul bottone di consenso, effettuare uno scroll, etc.
Il semplice banner però non basta a rendere sicuro e a norma il tuo sito: è importante fare in modo che i servizi di terze parti e di profilazione restino bloccati finchè l’utente non dia il suo consenso.
Altra cosa importante che ho capito durante le mie ricerche è che: Google Analytics se utilizzato in forma anonimizzata (link alla guida) è considerato un cookie tecnico e non di profilazione.
Inizialmente avevo pensato di integrare questa funzionalità con uno dei servizi a pagamento (Cookiebot o Iubenda), ma poi dopo qualche ricerca su GitHub, ho trovato questa libreria. Il progetto mi è sembrato molto interessante e ho deciso subito di provarlo. Infine ho anche contribuito integrando un paio di modifiche che alcuni utenti avevano proposto nelle issues del repository.
La libreria è molto semplice. Quando un utente visita per la prima volta il sito, gli viene mostrato il banner del consenso. Se l’utente accetta i cookies la libreria, avvia tutti i servizi di terze parti inizialmente bloccati e memorizza nel browser l’avvenuta accettazione. Alla sua prossima visita, se l’utente ha già dato il consenso, il banner non verrà mostrato ed avvierà tutti i servizi presenti sul sito.
Il README della libraria è molto ben fatto e fornisce diversi esempi di configurazione. Per poter funzionare è richiesta jQuery.
Ti riporto un esempio di implementazione. Inserisci nell’head, prima jQuery e poi la libreria:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script type="text/javascript" src="lib/it_cookie_law.js"></script>
Una volta fatto questo devi convertire i tag <script>
, che fanno riferimento a librerie esterne, nel codice
del tuo sito, da così:
<script src="https://example.com/path/to/script.js"></script>
a così:
<script src="#" data-blocked="https://example.com/path/to/script.js"></script>
Puoi personalizzare gli altri parametri direttamente modificando alcune variabili nel file della libreria. È tutto ben documentato e commentato.
Io ho implementato 2 funzionalità in particolare:
- la possibilità di ricaricare la pagina dopo che l’utente ha dato il consenso
- la possibilità di dare il consenso solo tramite click su “Accetta”. Di default infatti la libreria ottiene il consenso anche quando l’utente effettua una qualsiasi azione sulla pagina (click o scroll). Se questa feature è abilitata appare anche il bottone “Nega”.
Sei riuscito ad integrare nel tuo sito il banner informativo? Se sei interessato a questo argomento potrei fare qualche altro articolo a tema privacy.
Scrivimi nei commenti :)
Se invece hai bisogno di una consulenza specifica per il tuo sito puoi contattarmi, trovi i miei contatti in homepage.
AP