Una volta abbiamo affrontato un problema frustrante in cui i login degli utenti e i carrelli della spesa su uno dei nostri siti continuavano a fallire. Il problema era qualcosa che avevamo trascurato: come il nostro sito gestiva i cookie.
Gestire impostazioni tecniche come i cookie può sembrare intimidatorio, ma farle correttamente è fondamentale per un'esperienza utente fluida. Dopo aver risolto i nostri problemi con i cookie, abbiamo sviluppato un sistema semplice che chiunque può seguire.
In questa guida, condivideremo i passaggi esatti che utilizziamo per impostare, ottenere ed eliminare i cookie in WordPress. Analizzeremo il processo in modo che tu possa gestire i cookie del tuo sito con sicurezza.

Nota: Questo è un tutorial avanzato. Richiede una conoscenza approfondita di HTML, CSS, siti WordPress e PHP.
Cosa sono i cookie?
I cookie sono file di testo semplice che vengono creati e memorizzati nei browser degli utenti quando visitano un sito web. Puoi utilizzare i cookie per aggiungere diverse funzionalità al tuo sito web WordPress.
Ecco alcuni casi d'uso comuni per i cookie:
- Memorizzare e gestire le informazioni di accesso di un utente
- Memorizzare informazioni temporanee di sessione durante la visita di un utente
- Ricordare gli articoli del carrello durante la visita di un utente a un negozio di e-commerce
- Tracciare l'attività dell'utente su un sito per offrire un'esperienza utente personalizzata
Sebbene i cookie siano strumenti potenti per i proprietari di siti web, possono sollevare preoccupazioni sulla privacy. Le moderne pratiche di marketing, tra cui l'email marketing, il growth hacking e la pubblicità digitale, utilizzano spesso i cookie come beacon di tracciamento per raccogliere e condividere l'attività degli utenti su più siti web.
Questo è il motivo per cui l'Unione Europea ha promulgato la Legge sui Cookie dell'UE, che richiede ai proprietari di siti web di dichiarare che utilizzano i cookie per memorizzare informazioni. Mentre molti siti visualizzano semplicemente un avviso di base, la vera conformità GDPR richiede la gestione attiva del consenso ai cookie e degli script di tracciamento.
WPConsent rende facile aggiungere un sistema di consenso ai cookie completamente conforme al tuo sito WordPress. Questo plugin va oltre le notifiche di base bloccando attivamente gli script di tracciamento finché i visitatori non danno il loro permesso.

Creare un banner di consenso ai cookie con WPConsent è semplice. Puoi scegliere un modello predefinito, personalizzare il design per adattarlo al tuo sito e lasciare che il plugin gestisca automaticamente tutte le richieste di consenso dei visitatori per te.
Puoi imparare come fare questo sul tuo sito nella nostra guida su come aggiungere un popup cookie per GDPR/CCPA.
Come vengono utilizzati i cookie su un tipico sito web WordPress
Per impostazione predefinita, WordPress utilizza i cookie per gestire le sessioni degli utenti connessi e l'autenticazione e per ricordare il nome e l'indirizzo email di un utente se compila un modulo di commento.
Tuttavia, molti plugin WordPress sul tuo sito web potrebbero anche impostare i propri cookie.
Ad esempio, OptinMonster ti consente di mostrare moduli di iscrizione via email diversi ai visitatori nuovi e di ritorno, e lo fa utilizzando i cookie.
Se stai utilizzando servizi web esterni sul tuo sito web, come Google Analytics o Google AdSense, allora potrebbero anche impostare cookie di terze parti sul tuo sito web.
Puoi visualizzare tutti i cookie del sito web nelle impostazioni del tuo browser. Ad esempio, in Google Chrome, devi iniziare aprendo la pagina delle Impostazioni.
Puoi farlo cliccando sull'icona dei ‘3 puntini’ in alto a destra e selezionando ‘Impostazioni’ oppure digitando chrome://settings nella barra degli indirizzi.

Nella pagina Impostazioni, fai clic su ‘Privacy e sicurezza’ nel menu di sinistra.
Successivamente, sotto ‘Privacy e sicurezza’, cerca e fai clic su ‘Cookie di terze parti’.

Questo aprirà la pagina delle impostazioni dei cookie.
Successivamente, devi cliccare sull'opzione ‘Visualizza tutti i dati e le autorizzazioni del sito’.

Nella pagina successiva, vedrai un elenco di tutti i cookie e i dati del sito memorizzati nel tuo browser da tutti i siti web che hai visitato.
Puoi digitare l'indirizzo di un sito web nella casella di ricerca e ti verranno mostrati i dati memorizzati da quel sito web.

Cliccando su un singolo elemento ti verranno mostrati maggiori dettagli sui singoli cookie e sul loro contenuto.
Come impostare un cookie in WordPress
Per seguire questo tutorial, dovrai aggiungere del codice al file functions.php del tuo tema o utilizzare un plugin per snippet di codice come WPCode. Se non l'hai mai fatto prima, dai un'occhiata alla nostra guida su come copiare e incollare snippet di codice in WordPress.
Per prima cosa, utilizzeremo la funzione setcookie() in PHP. Questa funzione accetta i seguenti parametri:
- Nome del cookie
- Valore del cookie
- Scadenza – opzionale e imposta un periodo di tempo dopo il quale il cookie scade
- Percorso – opzionale e utilizzerà la root del sito per impostazione predefinita
- Dominio – opzionale e utilizza il dominio del tuo sito web per impostazione predefinita
- Sicuro – opzionale, e trasferisce i dati dei cookie solo tramite HTTPS se vero
- httponly – opzionale, e quando impostato su true, il cookie è accessibile solo tramite HTTP e non può essere utilizzato dagli script
Ora, aggiungiamo uno snippet di codice al tuo sito WordPress. Questo codice memorizza il timestamp esatto in cui un utente ha visitato il tuo sito web in un cookie:
function wpb_cookies_tutorial1() {
$visit_time = date('F j, Y g:i a');
if(!isset($_COOKIE[wpb_visit_time])) {
// set a cookie for 1 year
setcookie('wpb_visit_time', $visit_time, time()+31556926);
}
}
Ora puoi visitare il tuo sito web e quindi controllare i cookie del tuo browser. Troverai un cookie con il nome wpb_visit_time.
Come ottenere un cookie e usarlo in WordPress
Ora che abbiamo creato questo cookie che viene memorizzato nel browser dell'utente per un anno, vediamo come possiamo utilizzare queste informazioni sul nostro sito web.
Se conosci il nome di un cookie, puoi facilmente richiamarlo ovunque in PHP usando la variabile $_COOKIE[]. Aggiungiamo del codice che non solo imposta il cookie, ma lo utilizza anche per fare qualcosa sul tuo sito web:
function wpb_cookies_tutorial2() {
// Time of user's visit
$visit_time = date('F j, Y g:i a');
// Check if cookie is already set
if(isset($_COOKIE['wpb_visit_time'])) {
// Do this if cookie is set
function visitor_greeting() {
// Use information stored in the cookie
$lastvisit = $_COOKIE['wpb_visit_time'];
$string .= 'You last visited our website '. $lastvisit .'. Check out whats new';
return $string;
}
} else {
// Do this if the cookie doesn't exist
function visitor_greeting() {
$string .= 'New here? Check out these resources...' ;
return $string;
}
// Set the cookie
setcookie('wpb_visit_time', $visit_time, time()+31556926);
}
// Add a shortcode
add_shortcode('greet_me', 'visitor_greeting');
}
add_action('init', 'wpb_cookies_tutorial2');
Abbiamo commentato all'interno del codice per mostrarti cosa fa ogni parte. Questo codice utilizza le informazioni memorizzate nel cookie e le visualizza utilizzando uno shortcode.
Ora puoi aggiungere lo shortcode [greet_me] ovunque sul tuo sito web, e mostrerà quando un utente ha visitato l'ultima volta.
Sentiti libero di modificare il codice per renderlo più utile per il tuo sito web. Ad esempio, puoi visualizzare post recenti agli utenti di ritorno e post popolari ai nuovi utenti.
Eliminare un cookie in WordPress
Finora, abbiamo imparato come impostare un cookie e utilizzarlo in seguito sul tuo sito web. Ora, diamo un'occhiata a come eliminare i cookie.
Per eliminare un cookie, devi aggiungere la seguente riga al tuo codice:
unset($_COOKIE['wpb_visit_time']);
Non dimenticare di sostituire wpb_visit_time con il nome del cookie che stai cercando di eliminare.
Mettiamo questo codice in un contesto utilizzando lo stesso codice di esempio che abbiamo usato in precedenza. Questa volta, elimineremo un cookie e lo imposteremo nuovamente con nuove informazioni:
function wpb_cookies_tutorial2() {
// Time of user's visit
$visit_time = date('F j, Y g:i a');
// Check if cookie is already set
if(isset($_COOKIE['wpb_visit_time'])) {
// Do this if cookie is set
function visitor_greeting() {
// Use information stored in the cookie
$lastvisit = $_COOKIE['wpb_visit_time'];
$string .= 'You last visited our website '. $lastvisit .'. Check out whats new';
// Delete the old cookie so that we can set it again with updated time
unset($_COOKIE['wpb_visit_time']);
return $string;
}
} else {
// Do this if the cookie doesn't exist
function visitor_greeting() {
$string .= 'New here? Check out these resources...' ;
return $string;
}
}
add_shortcode('greet_me', 'visitor_greeting');
// Set or Reset the cookie
setcookie('wpb_visit_time', $visit_time, time()+31556926);
}
add_action('init', 'wpb_cookies_tutorial2');
Come puoi vedere, questo codice elimina il cookie una volta che abbiamo utilizzato le informazioni memorizzate al suo interno. Successivamente, reimpostiamo il cookie con le informazioni sull'ora aggiornate.
Domande frequenti sui cookie di WordPress
Ecco le risposte ad alcune delle domande più comuni sull'impostazione, l'ottenimento e l'eliminazione dei cookie in WordPress.
1. Cosa sono i cookie del sito web?
I cookie del sito web sono piccoli file di testo memorizzati nel browser web di un visitatore. Vengono utilizzati per salvare e recuperare informazioni per uno specifico sito web, come ricordare lo stato di accesso di un utente, mantenere gli articoli nel carrello della spesa o personalizzare la sua esperienza.
2. I cookie di WordPress fanno male al mio sito?
No, i cookie non sono intrinsecamente dannosi. Sono essenziali per molte funzioni principali di WordPress, come la gestione degli accessi degli utenti e il ricordo delle informazioni sui commentatori. Tuttavia, poiché possono tracciare l'attività dell'utente, sollevano preoccupazioni sulla privacy, motivo per cui esistono normative come il GDPR.
3. Devo mostrare un avviso di consenso ai cookie in WordPress?
Se il tuo sito web ha visitatori da paesi con leggi sulla privacy come il GDPR dell'Unione Europea, allora sei tenuto a ottenere il consenso dell'utente prima di memorizzare la maggior parte dei tipi di cookie. L'utilizzo di un plugin come WPConsent è un modo semplice per garantire la conformità.
4. Come posso vedere quali cookie utilizza il mio sito web?
Puoi visualizzare tutti i cookie utilizzati da un sito web direttamente negli strumenti per sviluppatori o nelle impostazioni del tuo browser. Ad esempio, in Google Chrome, puoi andare su Impostazioni » Privacy e sicurezza » Cookie di terze parti e quindi fare clic su 'Visualizza tutti i dati e le autorizzazioni del sito' per ispezionare i cookie di qualsiasi sito che hai visitato.
Risorse aggiuntive sull'utilizzo dei cookie con WordPress
Speriamo che questo articolo ti abbia aiutato a imparare come impostare, ottenere ed eliminare facilmente i cookie di WordPress. Potresti anche voler consultare altre guide relative all'utilizzo dei cookie in WordPress:
- Glossario: Cookie
- Come utilizzare il retargeting tramite cookie in WordPress per mostrare messaggi personalizzati sul sito
- Come sapere se il tuo sito web WordPress utilizza i cookie
- Come aggiungere un popup per i cookie in WordPress per GDPR/CCPA
- I migliori plugin WordPress per il GDPR per migliorare la conformità
- Come cancellare la cache del browser in tutti i browser principali (modo veloce)
- Come gestire ed eliminare i transient in WordPress (Il modo facile)
Se ti è piaciuto questo articolo, iscriviti al nostro canale YouTube per tutorial video su WordPress. Puoi anche trovarci su Twitter e Facebook.

Alex
Ciao, non ho capito se devo mettere il file nella cartella del tema nel file functions.php e salvarlo
Commenti WPBeginner
Sì, il codice mostrato in questa guida potrebbe essere inserito nel file functions.php del tema, che si trova nella cartella del tema.
Detto questo, raccomandiamo di utilizzare invece il metodo descritto in questa guida poiché è un po' più sicuro: https://www.wpbeginner.com/beginners-guide/beginners-guide-to-pasting-snippets-from-the-web-into-wordpress/
Alan Brady
Un articolo molto utile e informativo, grazie.
Ho scoperto che usare semplicemente unset non sembrava eliminare il cookie, ho dovuto impostare la scadenza del cookie a un momento nel passato, ad esempio:
setcookie(‘wpb_visit_time’, $visit_time, time()-1);
Supporto WPBeginner
Grazie per aver condiviso questo per coloro che potrebbero incontrare lo stesso problema.
Amministratore
Debbie Kurth
Il problema è che, quando implemento codice come questo, ricevo un errore di avviso e il cookie fallisce, quando sono in WordPress.
Avviso: Impossibile modificare le informazioni sull'intestazione – intestazioni già inviate da (output iniziato
Come aggiri questo problema?
Supporto WPBeginner
Ci sono alcune possibili ragioni per questo errore specifico, ti consigliamo di dare un'occhiata al nostro articolo qui sotto che approfondisce l'errore e come risolverlo:
https://www.wpbeginner.com/wp-tutorials/how-to-fix-pluggable-php-file-errors-in-wordpress/
Amministratore
Pete
Come posso usare un cookie per limitare gli utenti a visitare una pagina una sola volta.
Nigel
Grazie per l'ottimo tutorial!
Un piccolo errore: nel primo snippet di codice $wpb_visit_time dovrebbe essere ‘wpb_visit_time’
Supporto WPBeginner
Thanks for catching that, we’ll be sure to update the code
Amministratore
Matt
Ciao, sembra che tu abbia un errore nel codice del primo esempio:
function wpb_cookies_tutorial1() { $visit_time = date(‘F j, Y g:i a’); if(!isset($_COOKIE[$wpb_visit_time])) { // imposta un cookie per 1 anno setcookie(‘wpb_visit_time’, $current_time, time()+31556926); } }
Specifichi la variabile come $visit_time ma nella funzione setcookie chiami $current_time.
Grazie per le guide, sono molto utili.
Supporto WPBeginner
Thanks for pointing that out, we will be sure to update and fix that, glad our guides have been useful
Amministratore
Anastasia
I tuoi articoli sono davvero utili ma ho bisogno di capire molto bene i codici, quindi voglio sapere, Devo copiare e incollare tutto il codice visualizzato qui? Sostituisco wbp_visit_time, wbp_cookies_tutorial con il nome del mio sito?
Supporto WPBeginner
Per capire come aggiungere il codice, dovresti consultare il nostro articolo qui sotto:
https://www.wpbeginner.com/beginners-guide/beginners-guide-to-pasting-snippets-from-the-web-into-wordpress/
Non è necessario sostituire i nomi con il nome del tuo sito.
Amministratore
Brian
Non so perché ogni volta che provo a cercare il mio sito web su qualsiasi motore di ricerca, scrive "sito web non attendibile" Cosa c'è che non va? Come può il mio sito web essere considerato attendibile da tutti i browser e motori di ricerca?
Supporto WPBeginner
Potresti voler assicurarti che il tuo sito utilizzi HTTPS e dare un'occhiata alla nostra guida qui sotto: https://www.wpbeginner.com/wp-tutorials/how-to-add-ssl-and-https-in-wordpress/
Amministratore
Geeby
Mi scuso per aver riaperto questa discussione, ma ho bisogno di aiuto. La prima pagina del mio sito chiede ai clienti di selezionare la loro regione. I prodotti disponibili differiranno a seconda di dove scelgono. Non voglio che debbano riselezionare questa posizione ogni volta che vanno sulla homepage. Qualche consiglio?
Supporto WPBeginner
Dovresti verificare con il supporto del tuo plugin eCommerce se hanno un metodo per impostare questo per i tuoi utenti.
Amministratore
Les
Ottimo articolo. Hai detto di inserire il codice nel file functions.php. Sto usando WP Elementor, ho bisogno che i valori dei cookie vengano visualizzati solo quando un utente visita una determinata pagina. Questo codice può essere aggiunto a una pagina specifica? Voglio creare il cookie con determinati valori che provengono da un modulo, la prima volta che l'utente completa il modulo. Dopodiché, la prossima volta che tornerà su questa pagina, il modulo dovrebbe precompilarsi automaticamente dai dati del cookie, questo riduce i campi che devono completare in una visita di ritorno.
Supporto WPBeginner
Per questo, dovresti contattare il plugin del modulo che stai utilizzando per vedere se hanno già un sistema impostato per questo.
Amministratore
Anthony Coffey
Puoi aggiungere il codice a functions.php e utilizzare la funzione di WordPress "is_page()" per aggiungere logica condizionale al tuo snippet di codice per i cookie.
La funzione is_page() accetta l'ID della pagina, lo slug o il nome/titolo. È abbastanza facile da usare, puoi leggere di più sulla funzione is_page() online nel codex di WordPress.