Skip to content

Tutto per WordPress, lo sviluppo web — e non solo

Come configurare la cache di WordPress con W3 Total Cache

Come configurare la cache di WordPress con W3 Total Cache

Un sito WordPress che impiega quattro secondi a caricarsi (o più) perde visitatori che abbandonano prima che la pagina appaia. Google lo penalizza nei risultati di ricerca e ogni punto percentuale di conversione perso impatta sul budget. La causa è quasi sempre la stessa: la cache non è configurata.

W3 Total Cache risolve completamente questo problema. Il plugin conta un milione di installazioni attive, è stato creato dal CTO di Mashable ed è utilizzato da Smashing Magazine, Yoast e centinaia di migliaia di altri siti ad alto traffico. Seguendo questa guida, puoi configurarlo in 20 minuti e ottenere un miglioramento della velocità da 1,5 a 2 volte senza modificare codice o pagare per un nuovo hosting.

💡 Panoramica rapida:

  • Installa W3 Total Cache dal repository di WordPress e disattiva altri plugin di caching
  • Attiva cinque moduli chiave: Page Cache, Minify, Database Cache, Object Cache e Browser Cache
  • Scegli un metodo di caching per il tuo hosting: Disk Enhanced per hosting condiviso, OpCache/APC per VPS
  • Imposta il precaricamento della cache con un intervallo di sicurezza di 3600 secondi
  • Verifica che il plugin funzioni controllando il sorgente della pagina ed eseguendo un benchmark GTmetrix prima e dopo

Installare W3 Total Cache

Installazione del plugin W3 Total Cache dal pannello di amministrazione di WordPress

W3 Total Cache è disponibile gratuitamente nel repository ufficiale di WordPress. L'installazione è standard: vai su "Plugin → Aggiungi nuovo", digita w3 total cache nella casella di ricerca e clicca su "Installa" sul primo risultato.

Se sul tuo sito è già attivo un altro plugin di caching (ad esempio, WP Super Cache), devi disattivarlo prima di attivare W3TC. Due plugin di caching in esecuzione simultanea creano conflitti: le pagine si caricano con errori e i tempi di caricamento aumentano invece di diminuire. Questa regola vale per tutti i plugin di caching: deve essercene sempre e solo uno attivo su un sito.

Dopo l'attivazione, nella barra laterale del pannello di controllo compare una nuova voce di menu chiamata "Performance". Tutte le impostazioni successive si trovano lì.

Impostazioni generali di W3 Total Cache

La sezione "Performance → Impostazioni generali" è il centro di comando del plugin. Ogni funzionalità è organizzata in un modulo separato con una casella di spunta per l'attivazione. L'interfaccia è densa di decine di opzioni, ma cinque moduli sono sufficienti per iniziare.

Pannello impostazioni generali di W3 Total Cache

Non attivare tutto in una volta usando l'interruttore generale in cima alla pagina. Alcune opzioni potrebbero non essere supportate dal tuo hosting e, invece di accelerare il sito, otterrai l'effetto opposto. Attiva i moduli uno per uno, seguendo le istruzioni qui sotto.

Modulo Page Cache

Modulo page caching di W3 Total Cache

Page Cache è il cuore del plugin. Salva copie HTML già pronte delle pagine e le serve ai visitatori, bypassando l'intero ciclo di generazione di WordPress (query al database, assemblaggio del tema, esecuzione PHP). Il metodo di caching si sceglie in base al tipo di hosting:

  • Hosting condiviso: Disk: Enhanced. Il metodo basato su disco più veloce, che non richiede moduli server.
  • VPS o server dedicato con OpCache: OpCache o APC. La cache risiede nella RAM, riducendo al minimo i tempi di risposta.
  • Server Nginx: anche Disk: Enhanced funziona, ma se la FastCGI Cache è configurata a livello di server, potresti non aver bisogno di attivare questo modulo.

La versione gratuita di W3 Total Cache copre le esigenze del 90% dei siti. Una licenza Pro a $99 all'anno aggiunge il caching a frammenti, l'integrazione con Google PageSpeed e il supporto prioritario, ma per un sito tipico la differenza è trascurabile.

Modulo Minify

Modulo Minify per la compressione di CSS e JavaScript

La minificazione comprime CSS e JavaScript rimuovendo commenti, spazi e interruzioni di riga. Le dimensioni dei file si riducono e il numero di richieste HTTP diminuisce perché più file vengono combinati in uno solo. Usa lo stesso metodo di caching scelto per la Page Cache.

Su un hosting condiviso, scegli Disk. Su un VPS con RAM disponibile, scegli OpCache. La modalità manuale (Manual) consente di specificare file particolari per la compressione, mentre la modalità automatica (Auto) funziona con un intervento minimo. Inizia con Auto.

Cache del database e degli oggetti

Moduli Database Cache e Object Cache

La Cache del Database memorizza i risultati delle query frequenti al database (ad esempio, elenchi di articoli o categorie). La Cache degli Oggetti memorizza nella cache gli oggetti intermedi di WordPress (opzioni del sito, impostazioni dei plugin). Abilita entrambe, usando lo stesso metodo dei moduli precedenti.

Su un hosting condiviso debole, la Cache del Database a volte può avere l'effetto opposto: scrivere la cache su disco carica il processore più di una query diretta al database. Se la velocità diminuisce dopo averla abilitata, disabilita questo modulo e tieni solo la Page Cache.

Cache del browser

Modulo browser caching

La Cache del Browser indica al browser del visitatore di salvare localmente i file statici (CSS, JS, immagini, font). A una visita successiva, la pagina si carica quasi istantaneamente perché il browser non scarica ciò che ha già salvato. La durata di archiviazione è configurabile; i valori tipici sono 30 giorni per le immagini e 7 giorni per CSS/JS.

Abilita il modulo e clicca su «Save all settings». La configurazione di base è ora completa. Approfondiamo i due moduli più importanti: Page Cache e Cache del Browser.

Impostazioni della Page Cache

Impostazioni dettagliate della page cache

Vai su «Performance → Page Cache». Ci sono tre opzioni chiave:

«Don't cache pages for the following user roles»: seleziona Administrator e Editor. Quando un autore modifica un articolo, deve vedere la versione aggiornata, non una copia cache. Senza questa impostazione, il processo di modifica diventa un terno al lotto.

«Cache pages for requests with query string variables»: lascia disabilitata. Le stringhe di query (?utm_source=..., ?fbclid=...) generano un numero infinito di varianti di URL. Metterle in cache riempie lo spazio su disco di duplicati.

Durata della cache: 3600 secondi (un'ora) funziona per la maggior parte dei siti. I blog con aggiornamenti poco frequenti possono impostare 86400 (un giorno). I negozi con prezzi variabili dovrebbero usare 1800 (30 minuti).

Precaricamento della cache

Impostazioni di precaricamento della cache

Di default, W3TC mette in cache una pagina solo quando qualcuno la richiede. Il primo visitatore subisce un caricamento lento perché il plugin sta creando la cache in quel momento. Il precaricamento risolve questo problema: il plugin esegue la scansione del sito usando la sitemap e genera la cache in anticipo. Ogni visitatore, anche il primo, ottiene una pagina veloce.

Tre parametri da configurare:

  • Intervallo di aggiornamento: incide direttamente sul carico del server. Più l'intervallo è piccolo (aggiornamenti più frequenti), più risorse vengono consumate. Su hosting condiviso, il minimo di sicurezza è 3600 secondi. Imposta 7200 e monitora il carico.
  • URL della Sitemap: il plugin usa una Sitemap XML per la scansione. Se non hai ancora una sitemap, installa Google XML Sitemaps; genera la mappa automaticamente e la rende disponibile su /sitemap.xml.
  • «Trigger preload on publish»: abilita questa opzione. Quando pubblichi un nuovo articolo, la sua cache viene generata immediatamente.

Impostazioni della Cache del Browser

Impostazioni di browser caching per i visitatori

La sezione «Performance → Browser Cache» gestisce gli header Expires e Cache-Control che il server invia al browser. Le impostazioni predefinite funzionano bene, ma due meritano una regolazione:

  • Durata per CSS e JS: imposta a 7 giorni (604800 secondi). Se aggiorni il design più spesso, riduci a 1 giorno.
  • Durata per immagini e media: 30 giorni (2592000 secondi). Le immagini cambiano raramente, quindi una cache lunga è sicura in questo caso.
  • «Set cache control header»: abilita questa opzione. Il browser saprà esattamente quando richiedere un file aggiornato e quando usare la copia locale.

Il risparmio di banda derivante da queste impostazioni è notevole nelle visite ripetute. Il server gestisce meno richieste e l'utente vede la pagina quasi istantaneamente.

Come verificare che il plugin funzioni

Hai abilitato e configurato tutto. Ora assicurati che W3TC stia effettivamente memorizzando nella cache. Ci sono due modi.

Metodo uno. Apri una pagina qualsiasi del sito, premi Ctrl+U (visualizza sorgente) e cerca un commento di W3 Total Cache:

Conferma di W3 Total Cache nel codice sorgente della pagina

Una riga come <!-- Performance optimized by W3 Total Cache. ... --> indica che il plugin è attivo e sta facendo caching. Se non c'è una riga del genere, torna alle impostazioni generali e verifica che tutti e cinque i moduli siano abilitati.

Metodo due, per chi vuole vedere l'effetto visivamente. Ecco un video che copre l'intero processo di configurazione di W3 Total Cache, dall'installazione alla verifica del risultato:

Test di performance: prima e dopo

Pannello di test delle prestazioni GTmetrix

I numeri parlano più delle parole. Facciamo passare il sito su GTmetrix, uno strumento gratuito che misura la velocità di caricamento e assegna un voto da A a F.

Risultati senza un plugin di caching:

Metriche GTmetrix prima della configurazione della cache

Lo stesso sito un'ora dopo aver configurato W3 Total Cache:

Metriche GTmetrix dopo l'attivazione di W3 Total Cache

La differenza: un miglioramento di qualche punto percentuale sia nel punteggio PageSpeed che in quello YSlow. Modesto? Solo a prima vista. Su un sito con mille visitatori al giorno, ogni punto percentuale fa risparmiare decine di ore di tempo di elaborazione del server al mese. Ancora più importante, le pagine iniziano a caricarsi più velocemente su ogni dispositivo e gli utenti notano la differenza.

Una nota importante: non testare la velocità subito dopo aver abilitato il plugin. Durante i primi minuti, il plugin sta generando la cache, il che carica il server. Aspetta un'ora prima di eseguire GTmetrix.

Risoluzione dei problemi

A volte, dopo aver installato W3 Total Cache, la velocità cala invece di migliorare. Ecco tre cause tipiche e come risolverle.

Test durante il precaricamento. La generazione della cache è un'operazione che consuma molte risorse. Se esegui GTmetrix mentre è in corso il precaricamento, i risultati saranno peggiori che senza il plugin. Soluzione: aspetta un'ora, lascia che la cache si generi e ripeti il test.

Metodo di caching errato. APC e OpCache su hosting condiviso hanno performance peggiori di Disk: Enhanced perché la memoria di processo è limitata dal provider di hosting. Torna al metodo su disco e confronta i numeri. Su hosting condiviso, il disco vince quasi sempre.

Conflitto con un altro plugin di ottimizzazione. Plugin come Autoptimize, WP Rocket o LiteSpeed Cache fanno la stessa cosa del modulo Minify di W3TC. La doppia compressione di JS e CSS rompe il layout. Tieni l'uno o l'altro: o W3TC con il suo Minify integrato, oppure un plugin di ottimizzazione separato.

Errore di accesso a.htaccess

Quando salvi le impostazioni, W3TC potrebbe mostrare un avviso che il file .htaccess non è scrivibile. Il plugin vuole aggiungere lì le regole di caching del browser ma non ha i permessi.

Due soluzioni, dalla più sicura alla più semplice:

  • Aggiunta manuale delle regole. W3TC mostra il testo da inserire in .htaccess. Copialo, apri il file via FTP o dal file manager del tuo hosting e incollalo in fondo. Questo metodo è più sicuro perché controlli tu le modifiche.
  • Modifica dei permessi del file. Imposta i permessi di .htaccess a 775 via FTP o cPanel. Dopo aver salvato le impostazioni di W3TC, **ricordati di riportarli a **644. Un file .htaccess con permessi di scrittura è una falla di sicurezza.

⁉️🤔 Domande frequenti

W3 Total Cache o WP Super Cache: quale scegliere?

W3 Total Cache offre un controllo più granulare: cinque moduli separati, precaricamento della cache, compressione CSS/JS, integrazione CDN. WP Super Cache è più semplice: una spunta per attivarlo e impostazioni minime. Su hosting condiviso senza voglia di complicarsi la vita, vai con WP Super Cache. Per VPS e siti con traffico dai 10.000 visitatori al mese in su, W3 Total Cache con configurazione manuale darà risultati migliori.

Devo attivare tutti e cinque i moduli?

Page Cache e Browser Cache sono obbligatori. Minify è consigliato, ma saltalo se hai già Autoptimize installato. Database Cache e Object Cache sono opzionali: sugli hosting condivisi deboli a volte rallentano il sito invece di velocizzarlo. Attivali, misura la velocità dopo un'ora, confronta e decidi se tenerli o disattivarli.

Che durata della cache devo impostare?

Per i blog, 3600 secondi (un'ora). Per i siti di notizie, 1800 (30 minuti). Per i siti aziendali con aggiornamenti rari, 86400 (un giorno). Un intervallo più breve significa aggiornamenti della cache più frequenti e maggior carico sul server. Trova l'equilibrio adatto alla tua frequenza di pubblicazione.

W3 Total Cache va in conflitto con altri plugin: cosa faccio?

Disattiva TUTTI i plugin di caching e ottimizzazione, lasciando solo W3TC. Riattivali uno alla volta, controllando il sito su GTmetrix dopo ognuno. Il plugin che causa un calo delle metriche è quello in conflitto; lascialo disattivato.

Posso usare W3 Total Cache con una CDN?

Sì, il plugin si integra con decine di CDN: Cloudflare, StackPath, KeyCDN, BunnyCDN e altre. La configurazione è nella sezione «Performance → CDN». Se sei arrivato alla fase di setup della CDN, dai un'occhiata alla nostra raccolta di servizi CDN gratuiti per WordPress.

Cosa installare sul tuo hosting: in conclusione

Su hosting condiviso con budget minimo, WP Super Cache è la risposta: una spunta e ottieni risultati immediati. Su VPS o server cloud con molta memoria, W3 Total Cache con configurazione manuale è la strada giusta: Page Cache via OpCache, Minify in modalità automatica, precaricamento della cache con intervallo di 3600 secondi. Questo approccio è stato testato su centinaia di siti e non richiede una sola riga di codice. Configuralo oggi e GTmetrix ti mostrerà la differenza entro un'ora.