MICHELEPISANI.IT
 

Codice condizionale su WordPress per gestire Analytics, AdSense ed i bottoni Social

Cookie Policy, come adeguare i siti in WordPress alla normativa

Cookie Policy, come adeguare i siti WordPress alla normativa
June 18
07:102015

Con l'adeguamento alla normativa in materia di cookie sono spuntati decine di plugin con lo scopo di allineare i siti web alle richieste di legge. Allo stesso modo sono emerse lacune che alcuni di questi plugin si portano dietro, oltre a quella principale della sola presenza del banner informativo possiamo trovare ad esempio la presenza fissa del bottone di accettazione (che non è espressamente richiesto), la mancanza di accettazione implicita con lo scroll della pagina (prevista in quanto riconosciuta come interazione all'utilizzo del sito) ed in particolare l'anonimizzazione del codice di Google Analytics, come già anticipato nell'articolo "Cookie policy: come gestire Analytics, Adsense e i bottoni Social" che non avviene automaticamente o comunque non va in funzione della presenza del cookie tecnico di accettazione.

Tra i plugin atti allo scopo, non per pubblicità bensì perchè è quello che ho utilizzato per adeguare ai termini di legge i siti in WordPress che gestisco, ho provato "Notifica Cookie" di dFactory. Con i vari aggiornamenti ho notato che sono state colmate alcune mancanze, una tra esse quella dello scroll, e che ha messo a disposizione un codice condizionale per gestire parti del sito dipendenti dalla presenza del cookie di accettazione:

if ( function_exists('cn_cookies_accepted') && cn_cookies_accepted() ) {
    // Your third-party non functional code here
}

Va da se che la gestione di queste parti condizionate dall'accettazione della normativa deve essere fatta manualmente agendo sulle porzioni di codice di interesse. Ma se il plugin che state utilizzando si limita solo alla gestione del banner (tramite ovviamente assegnazione del cookie tecnico, altrimenti il plugin è assolutamente da cambiare) senza che l'autore del plugin fornisca una funzione condizionale con cui ottemperare ai termini di legge per quanto riguarda il codice di tracciamento di Analytics o AdSense o i widget dei Social? La soluzione è... crearselo.

Hai bisogno di Generare una privacy policy in pochi istanti in modo Facile e Veloce? Puoi farlo con Iubenda. Accedendo al servizio cliccando nel banner qui sotto avrai diritto ad uno sconto immediato del 10% in fase di acquisto! Approfittane subito!

genera velocemente una cookie policy con iubenda con il 10 percento di sconto

Spiegherò di seguito come riuscire a crearsi un codice condizionale partendo da un plugin che si limita a visualizzare il banner dell'informativa. Come anticipato prenderò di esempio il plugin "Notifica Cookie" anche se adesso fornisce (non l'ho testato) il codice condizionale, ma il concetto vale per la gestione di tutti i cookie, che derivino da plugin o meno.

Installando e configurando il plugin per l'adeguamento alla Cookie Law avremo al primo accesso una situazione simile a quella mostrata in Fig. 1:

Cookie policy Wordpress - come gestire i siti in Wordpress

Fig. 1 - Cookie policy - come gestire i siti in Wordpress

Se andiamo a vedere la situazione dei cookie nel nostro browser (su Firefox il percorso è: "Strumenti" --> "Opzioni" --> "Privacy" --> "rimuovere i singoli cookie" --> Scrivere in "Cerca" il nome del dominio del proprio sito), troveremo una situazione simile a quella mostrata in Fig. 2, dove non c'è traccia del cookie tecnico relativo all'accettazione della normativa:

Cookie policy Wordpress - come gestire i siti in Wordpress, situazione cookie al primo accesso

Fig. 2 - Cookie policy Wordpress - come gestire i siti in Wordpress, situazione cookie al primo accesso

Tornando sul sito ed accettando i termini di legge (ad esempio scrollando la pagina o cliccando su "Ok" nel banner) e rieseguendo i passaggi per la visualizzazione dei cookie installati sul browser per il nostro sito di interesse noteremo che ce n'è uno in più, in questo caso "cookie_notice_accepted" con contenuto "true", Fig. 3, questo sarà il cookie che ci servirà per gestire le varie porzioni di codice che necessitano di essere adeguate alla normativa.

Cookie policy Wordpress - come gestire i siti in Wordpress, situazione cookie dopo l'accettazione

Fig. 3 - Cookie policy Wordpress - come gestire i siti in Wordpress, situazione cookie dopo l'accettazione

In linea generale, per eseguire il controllo dei cookie nella pagina (indipendentemente da WordPress), lo script da utilizzare è il seguente:

<?php
if (!isset($_COOKIE["nome_cookie"])) {
    // Codice da inserire se il cookie non esiste
}
?>

Per inserire lo script nelle vostre pagine dovrete accedere al pannello di WordPress e recarvi dove risiedono le parti di codice da gestire, per quanto riguarda Google Analytics nel mio caso:

Aspetto --> Editor --> scripts.php

Se non si trova in quella pagina, il codice di tracciamento di Google Analytics in un tema potrebbe essere inserito nel footer.php o nell'header.php.

Una volta individuato è possibile applicare il codice funzionale all'opzione di anonimizzazione dell'IP come di seguito (l'esempio prende in considerazione codice di tracciamento di Analytics Classico, se utilizzate codice di Universal l'opzione da inserire è leggermente diversa e trovate le indicazioni qui):

<script>
  var _gaq=[['_setAccount','<?php echo GOOGLE_ANALYTICS_ID; ?>'],<?php if (!isset($_COOKIE["cookie_notice_accepted"])) { echo "['_gat._anonymizeIp'],"; } ?>['_trackPageview']];
  (function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
    g.src=('https:'==location.protocol?'//ssl':'//www')+'.google-analytics.com/ga.js';
    s.parentNode.insertBefore(g,s)}(document,'script'));
</script>

In questo modo oltre ad adeguarsi ai termini di legge anonimizzando l'IP del visitatore, lo script basandosi sul cookie toglierà tale impostazione una volta che l'utente ha accettato i termini di legge, dalla seconda pagina visitata in poi, evitando di perdersi dati statistici più precisi a livello demografico.

 

Hai bisogno di Generare una privacy policy in pochi istanti in modo Facile e Veloce? Puoi farlo con Iubenda. Accedendo al servizio cliccando nel banner qui sotto avrai diritto ad uno sconto immediato del 10% in fase di acquisto! Approfittane subito!

genera velocemente una cookie policy con iubenda con il 10 percento di sconto

Tags

Autore

Michele Pisani

Michele Pisani

Ho uno spiccato orientamento al problem-solving, se è troppo facile non mi diverto :)
Credo nella volontà e nel cambiamento perchè hanno fatto della mia passione il mio pane quotidiano.
Se devo descrivermi con una sola parola direi... "Concretezza", la mia stretta di mano è una garanzia.

2 Commenti

  1. Alberto Tuesday, December 28, 2021 alle ore 07:22

    Salve,
    a me succede una cosa del genere col plugin Cookie Notice & Compliance for GDPR / CCPA, tutte le volte che entro nei miei siti o aggiorno appare quel fastidioso avviso con Safari e Chrome.
    Come posso eliminarlo per sempre dopo l'accettazione?

    Rispondi a questo commento
    • Michele PisaniAutore Tuesday, December 28, 2021 alle ore 11:44

      Ciao Alberto,
      la durata del consenso, in base ai termini della normativa, non deve essere inferiore ai 6 mesi. Ovviamente con sistemi come Safari che bloccano o riducono notevolmente la durata dei cookie questo non è possibile, in tal caso tuttavia la responsabilità è di Safari e non del gestore del sito.
      Ad ogni modo, nelle impostazioni del plugin ci sono 2 voci: "Accepted expiry" e "Rejected expiry". Queste ti consentono di scegliere la durata del consenso definendo quando mostrare nuovamente il banner.

      Rispondi a questo commento

Scrivi un Commento

Il tuo indirizzo email non sarà pubblicato.
I campi contrassegnati da un * sono obbligatori

Articoli e Argomenti correlati

Il Canale YouTube in ITALIANO

1 VIDEO GRATIS ogni 2 settimane! ISCRIVITI!

Entra a far parte della community su Facebook

Categorie popolari

Iscriviti alla mia newsletter

La tua e-mail con me sarà al sicuro.
Non fornirò mai le tue informazioni a nessuno!

Ultimi commenti

Michele Pisani

Hai verificato se succede per tutte le pagine da un certo periodo di tempo in poi o solo su alcune?

Tecnowiz

Sono amministratore di un blog pure io... Intanto ti faccio i complimenti per questo articolo. …

Michele Pisani

Ciao Antonio, grazie per la fiducia :) In caso di più fogli è necessario inserire il codice del …

Antonio

Ciao Michele, ho acquistato il tuo libro che unitamente ai tuoi video sta diventando il mio corso …