Cache Pro — Full Page Cache with Brotli, Warm-Up & AJAX

Cache Pro è un modulo di cache di pagine complete per PrestaShop. Salva una copia pronta da servire di ogni pagina del tuo negozio e la invia ai visitatori prima che PrestaShop debba costruire di nuovo la pagina. Le pagine salvate vengono servite molto più velocemente, il tuo server lavora molto meno e il negozio mantiene la sua velocità quando il traffico cresce.

La cache è pensata per negozi reali: i clienti connessi e i visitatori con un carrello ricevono sempre pagine normali ed esatte, i prezzi seguono la valuta e la lingua del visitatore e, quando modifichi un prodotto, un prezzo, una promozione o una giacenza, vengono svuotate solo le pagine che li mostrano.

Punti di forza:

  • Pagine salvate inviate prima che PrestaShop costruisca la pagina, senza alcuna query SQL del modulo
  • Svuotamento preciso: la modifica di un prodotto, di un prezzo, di una promozione, di una giacenza, di un’immagine, di un marchio o di un fornitore elimina solo le pagine interessate
  • Precaricamento di home page, categorie, prodotti e pagine CMS in tutte le lingue, dal back office o da un’attività pianificata
  • Testa la mia cache con un clic e una dashboard: tasso di successo, guadagno di velocità, pagine per tipo, motivi per cui le pagine non hanno usato la cache, ultimi svuotamenti, verifiche
  • Esclusioni per URL, intervallo di indirizzi IP, cookie, prodotto, categoria o pagina CMS; le pagine 2, 3… e gli ordinamenti hanno una copia propria
  • Multilingua, multivaluta e multinegozio
  • Precompressione Gzip (e Brotli se il tuo server ha l’estensione PHP) e minificazione HTML facoltativa
  • Indirizzo protetto da un token segreto per attività cron, ERP, PIM e script di rilascio
  • Un solo download per PrestaShop 1.7.8, 8.0+ e 9.1+ (PHP 7.4 minimo)

Vedi il modulo e le offerte


Panoramica

Ogni volta che un visitatore apre una pagina, PrestaShop si avvia, esegue i suoi moduli, interroga il database, compila i template e infine costruisce l’HTML. Su un negozio con molti prodotti, regole di prezzo e moduli questo richiede centinaia di millisecondi, a volte secondi, e si ripete per ogni visitatore anche se la maggior parte delle pagine è identica per tutti.

Con Cache Pro la prima visita costruisce la pagina come al solito e il modulo ne conserva una copia. I visitatori successivi ricevono subito quella copia:

  1. Il visitatore richiede una pagina.
  2. Il modulo cerca una copia salvata per questo negozio, indirizzo, lingua, valuta e dispositivo (desktop o mobile).
  3. Se esiste una copia valida, viene inviata subito (già compressa) e PrestaShop si ferma lì.
  4. Altrimenti la pagina viene costruita normalmente, inviata al visitatore e salvata per i successivi.

Il risultato è un tempo di risposta del server (TTFB) molto più basso sulle pagine più importanti per i tuoi visitatori e per Google, e un server che regge più visitatori. Una pagina salvata richiede una frazione delle query al database di una pagina generata.

Chi riceve le pagine salvate

Le pagine salvate sono per i visitatori che vedono la stessa pagina di tutti gli altri. Chiunque abbia una pagina personale viene servito direttamente da PrestaShop, quindi nulla viene mai mostrato alla persona sbagliata.

Visitatore o richiesta Cosa succede
Visitatore anonimo su una pagina del catalogo Pagina salvata
Cliente connesso Pagina normale
Visitatore con prodotti nel carrello Pagina normale (facoltativo: pagina salvata con il blocco carrello aggiornato, vedi Visitatori con carrello)
Indirizzo IP, cookie, URL, prodotto, categoria o pagina CMS esclusi Pagina normale
Invio di un modulo, richiesta Ajax Pagina normale
Modalità manutenzione o geolocalizzazione attiva Pagina normale

Pagine salvate: home page, pagine prodotto, pagine categoria (comprese le pagine 2, 3… e gli ordinamenti), pagine CMS, più venduti, novità, prezzi ribassati, marchi, fornitori e mappa del sito. Carrello, ordine, account cliente, risultati di ricerca, modulo di contatto e pagine di altri moduli (blog…) non vengono mai salvati.

Dashboard di Cache Pro: banner «Cache attiva», pagine salvate, tasso di successo, guadagno di velocità, pagine per tipo e motivi per cui alcune visite non hanno usato la cacheDashboard: pagine salvate, tasso di successo, guadagno di velocità e motivi delle visite senza cache

Funzionalità

Cache di pagine complete, in ogni lingua e valuta

Viene conservata una copia distinta per ogni negozio, indirizzo, lingua, valuta e dispositivo (desktop o mobile), e per i visitatori che hanno i cookie che scegli (per esempio il consenso ai cookie). Un visitatore che naviga in franchi svizzeri non riceve mai la pagina di un visitatore in euro, e un cambio di valuta o di lingua mostra subito i prezzi giusti.

I parametri di tracciamento come utm_source, gclid o fbclid vengono ignorati, quindi un link di campagna usa la stessa pagina salvata dell’indirizzo normale. Le pagine 2, 3… e gli ordinamenti di una categoria hanno la propria copia. Un indirizzo con un parametro sconosciuto non viene mai salvato.

Svuotamento preciso

Non dovresti svuotare la cache a ogni modifica. Cache Pro ascolta ciò che succede in PrestaShop e rimuove solo le pagine interessate:

Cosa cambia Cosa viene svuotato
Un prodotto (modifica, aggiunta, eliminazione), una combinazione, un’immagine, un marchio o un fornitore Le sue pagine e gli elenchi che lo mostrano (categorie, home page, più venduti…)
Un prezzo, un prezzo specifico o una promozione, una giacenza (anche tramite un ordine) Le pagine che mostrano il prodotto
Una categoria o una pagina CMS L’intero negozio (menu e piè di pagina le mostrano)
Una valuta, una tassa, una lingua, una caratteristica, un attributo, un gruppo di clienti, un paese, una regola di prezzo del catalogo L’intero negozio
Moduli attivati, disattivati o spostati, un cambio di tema, la lingua o la valuta predefinita, la modalità catalogo, i dati di contatto o la visualizzazione dei prezzi nei Parametri del negozio L’intero negozio, alla pagina successiva del back office
Le impostazioni di un altro modulo salvate (facoltativo) L’intero negozio di quel back office
Il pulsante Svuota cache di PrestaShop L’intero negozio

Una pagina che mostra una promozione che inizia o finisce più tardi viene salvata solo fino a quel momento, così una promozione programmata compare in orario. Dalla dashboard puoi anche svuotare tutto, un tipo di pagina o una pagina dal suo indirizzo. Gli svuotamenti funzionano anche quando la cache è disattivata, quindi una pagina non può mai tornare obsoleta.

Area «Svuota una pagina» con l’indirizzo di una pagina del negozio e l’elenco degli ultimi svuotamenti con data e causaSvuotamento preciso: svuota una pagina dal suo indirizzo e segui gli ultimi svuotamenti e la loro causa

Precaricamento

Una cache vuota significa pagine lente per i primi visitatori. Il precaricamento visita le tue pagine in anticipo: home page, categorie, più venduti, novità, marchi, fornitori, prodotti e pagine CMS, in ogni lingua attiva e, se vuoi, nella versione mobile. Usa la tua sitemap XML se esiste, altrimenti il catalogo.

Avvialo dalla dashboard e guarda la barra di avanzamento, oppure lascia che lo esegua un’attività pianificata (cron). Scegli la velocità (2, 5, 10 o 20 pagine alla volta) in base al tuo hosting. Un negozio protetto da password (un sito di staging) è supportato con l’autenticazione HTTP.

Precaricamento in corso: barra di avanzamento e numero di pagine visitate, con un pulsante InterrompiPrecaricamento: visita le tue pagine in tutte le lingue prima dei visitatori, con una barra di avanzamento

Testa la mia cache e dashboard

Testa la mia cache visita la tua home page due volte e ti dice in pochi secondi se la cache funziona (prima visita generata e salvata, seconda visita servita dalla cache, cartella della cache non scaricabile dal web).

La dashboard mostra cosa fa la cache per il tuo negozio negli ultimi 7 giorni:

  • numero di pagine salvate, spazio su disco usato e limite
  • tasso di successo e guadagno di velocità (tempo di risposta dalla cache rispetto a una pagina generata)
  • pagine e tasso di successo per tipo di pagina
  • i motivi per cui alcune visite non hanno usato la cache (cliente, carrello, esclusione, parametro sconosciuto, manutenzione…)
  • un grafico per giorno
  • gli ultimi svuotamenti e la loro causa
  • verifiche: cartella della cache, licenza, PHP, Gzip e Brotli, cURL, manutenzione, geolocalizzazione, altri moduli di cache di pagine, valute, tema, spazio su disco
Risultato di «Testa la mia cache»: prima visita generata e salvata, seconda visita servita dalla cache, con i due tempi di rispostaTesta la mia cache: due visite alla tua home page e i loro tempi di risposta, con un clic

Esclusioni

Tieni fuori dalla cache le pagine che devono sempre essere generate:

  • URL: testo semplice (/blog), caratteri jolly (/*/promo-*) o espressioni regolari
  • Indirizzi IP e intervalli (203.0.113.0/24): il tuo team vede sempre pagine in tempo reale
  • Cookie: visitatori che hanno uno dei cookie che elenchi (test A/B, personalizzazione)
  • Prodotti, categorie e pagine CMS per identificativo
  • Tipi di pagina: disattiva i tipi che non vuoi salvare
Impostazioni delle esclusioni: URL esclusi, identificativi di prodotti, categorie e pagine CMS, indirizzi IP e cookie, compilati con esempiEsclusioni: tieni fuori dalla cache gli URL, i prodotti, le categorie, le pagine CMS, gli indirizzi IP e i cookie che scegli

Visitatori con carrello

Per impostazione predefinita un visitatore che ha prodotti nel carrello riceve pagine normali, così il carrello, i totali e i prezzi sono sempre esatti. È la scelta più sicura.

Se preferisci che anche questi visitatori ricevano pagine salvate, l’opzione avanzata Servi le pagine salvate e aggiorna il blocco carrello invia la pagina salvata e aggiorna il blocco carrello con una piccola richiesta appena la pagina è caricata. Il pulsante Rileva il blocco carrello del mio tema compila il blocco per i temi Classic e Hummingbird; per gli altri temi servono l’hook e il selettore CSS del blocco. La pagina di un visitatore così non viene mai salvata.

Impostazioni del blocco carrello: opzione per i visitatori con carrello attivata e blocco carrello rilevato nel temaVisitatori con carrello: servi le pagine salvate e aggiorna il blocco carrello dopo il caricamento

Multinegozio

Con più negozi, ogni negozio ha le proprie impostazioni, pagine salvate, statistiche e precaricamento. Il back office ti chiede di scegliere un negozio quando apri Cache Pro dalla vista «tutti i negozi».

Attività pianificata e API

Cache Pro ti dà un indirizzo protetto da un token segreto:

  • un indirizzo di attività pianificata (cron) che elimina le pagine scadute, mantiene la cache entro il limite di dimensione ed esegue il precaricamento
  • un’API per il tuo ERP, PIM o gli script di rilascio: svuota tutto, un tipo di pagina, un prodotto, una categoria, una pagina CMS, un marchio, un fornitore o un indirizzo, avvia il precaricamento, leggi le statistiche

Vedi Cron e API per i parametri.

Compressione e minificazione HTML

Le pagine vengono salvate precompresse con Gzip, e anche con Brotli quando il tuo server ha l’estensione PHP Brotli. Il visitatore riceve il formato migliore accettato dal suo browser, senza alcun lavoro di compressione al momento della richiesta. Una minificazione facoltativa rimuove commenti e spazi tra i tag nella copia salvata; script, stili e testi non vengono toccati.

Comportamento sicuro sotto carico

  • Una pagina viene scritta per intero o per niente: un visitatore non riceve mai una pagina troncata.
  • Quando una pagina scade, un visitatore la rigenera mentre gli altri ricevono ancora la copia precedente (al massimo 5 minuti), quindi una pagina molto visitata non mette mai in coda i visitatori. Uno svuotamento non serve mai una copia vecchia.
  • Le pagine salvate restano entro un limite di dimensione (1 GB per impostazione predefinita): le pagine più vecchie vengono rimosse per prime.
  • La cartella della cache è protetta e controllata dalla diagnostica.

Requisiti

  • PrestaShop 1.7.8, 8.0+ o 9.1+ (un solo download per tutte le versioni). PrestaShop 1.7.7 e precedenti, e 9.0, non sono supportati.
  • PHP 7.4 o successivo
  • Estensioni PHP: cURL (precaricamento e test), zlib (Gzip)
  • Accesso in scrittura alla cartella modules/wepresta_cache_pro/cache del modulo
  • Una licenza WePresta valida
  • Un solo modulo di cache di pagine alla volta: disattiva ogni altra cache di pagine complete

Installazione

  1. Scarica il file ZIP del modulo dal tuo account cliente WePresta.
  2. Nel back office di PrestaShop apri Moduli > Gestione moduli e fai clic su Carica un modulo.
  3. Seleziona il file ZIP e avvia l’installazione.

L’installazione crea le sue due piccole tabelle nel database, registra i suoi hook, crea la cartella della cache e la protegge. La cache resta disattivata finché non la attivi. Con Apache la cartella è protetta da un file .htaccess; con nginx aggiungi location ~ ^/modules/wepresta_cache_pro/cache/ { deny all; } alla configurazione del server. La dashboard ti dice se la cartella può essere scaricata dal web.

Aggiornamento dalla versione 1.0.0

Installa il nuovo archivio sopra il vecchio dalla Gestione moduli. Il modulo si aggiorna da solo: lo stato attivo o disattivo, le durate, le tue esclusioni (URL, cookie, indirizzi IP) e la velocità del precaricamento vengono conservati; le quattro esclusioni di URL suggerite dalla versione 1.0.0 (ricerca, account, carrello, contatto) vengono rimosse, perché quelle pagine non vengono comunque mai salvate; i file obsoleti vengono eliminati e la cache viene svuotata una volta. I visitatori con un carrello ricevono ora pagine normali: attiva l’opzione descritta sopra se vuoi che ricevano pagine salvate.


Primi passi

  1. Apri Cache Pro nel menu Moduli (menu WePresta su PrestaShop 9). Le Verifiche in fondo alla dashboard ti dicono cosa correggere, se serve.
  2. Fai clic su Attiva con le impostazioni consigliate.
  3. Fai clic su Testa la mia cache: la risposta mostra le due visite e i loro tempi di risposta.
  4. Fai clic su Avvia il precaricamento e lascia aperta la pagina fino alla fine, oppure pianifica l’attività descritta più sotto.
  5. Visita il tuo negozio in una finestra privata: ricarica una pagina e guarda la dashboard contare le pagine salvate e i successi.

Per seguire tu stesso una pagina, apri gli strumenti per sviluppatori del browser, carica una pagina due volte e leggi l’intestazione di risposta X-WP-Cache: MISS la prima volta, HIT la seconda, BYPASS quando PrestaShop ha risposto di proposito (cliente, carrello, esclusione…).


Impostazioni

Generale

  • Attiva la cache: attiva e disattiva le pagine salvate. I clienti e i visitatori con un carrello ricevono sempre pagine normali.
  • Minimizza l’HTML: commenti e spazi tra i tag vengono rimossi dalla copia salvata.
  • Servi la pagina scaduta durante la rigenerazione: attivo per impostazione predefinita, vedi sopra.
  • Svuota la cache quando si configura un altro modulo: un banner, un menu o un blocco modificati nelle impostazioni di un altro modulo compaiono subito.
  • Intestazioni di diagnostica: aggiunge X-WP-Cache-Key, -Type, -TTL, -Age (e -Reason quando una pagina salta la cache) alle risposte.
  • Cache del browser: Controlla ogni volta (consigliato), oppure 1, 5, 15 minuti, 1 ora.
  • Dimensione massima: quando il limite viene raggiunto, le pagine più vecchie vengono rimosse (0 = nessun limite).

Pagine in cache e durate

Per ogni tipo di pagina scegli se viene salvata e per quanto tempo (minimo 60 secondi). Valori predefiniti: home page 30 minuti, pagine prodotto 2 ore, pagine categoria 1 ora, pagine CMS 24 ore, altri elenchi 1 ora. Una pagina modificata nel back office viene aggiornata subito, qualunque sia la sua durata.

Impostazioni di ogni tipo di pagina: interruttore e durata per la home page, i prodotti, le categorie, le pagine CMS e gli altri elenchiPagine in cache e durate: scegli cosa viene salvato e per quanto tempo

Esclusioni

URL esclusi, identificativi di prodotti, categorie e pagine CMS, indirizzi IP e intervalli, cookie. Il salvataggio rifiuta un’espressione regolare o un indirizzo non validi e mostra ciò che hai digitato.

Indirizzi e varianti

  • Parametri ignorati: parametri di tracciamento che non cambiano la pagina (un lungo elenco è già incluso).
  • Parametri aggiuntivi con copia propria: parametri del tuo tema che selezionano una versione della pagina (per esempio un ordinamento).
  • Metti in cache le pagine filtrate: risultati della ricerca a faccette (?q=…). Disattivato per impostazione predefinita perché possono essere numerosissimi.
  • Cookie che cambiano la pagina: nomi di cookie (consenso ai cookie…) la cui presenza crea una copia separata.

Precaricamento e automazione

Velocità del precaricamento, versione mobile, autenticazione HTTP del negozio, indirizzo dell’attività pianificata, il token (che puoi rigenerare) e il promemoria dell’API.


Cron e API

Chiama l’indirizzo cron ogni 10 minuti: elimina le pagine scadute, mantiene la dimensione entro il limite ed esegue il precaricamento. Tieni l’indirizzo riservato, contiene il tuo token.

L’API si trova in /module/wepresta_cache_pro/api del tuo negozio. Invia il token come token o nell’intestazione X-WPC-Token e indica l’azione in action:

  • status (GET): versione, negozio, stato della cache, pagine e dimensione, precaricamento.
  • stats (GET): successi, insuccessi e visite senza cache (7 e 30 giorni), tempi di risposta medi.
  • warmup (GET): avvia o continua il precaricamento (parametri facoltativi time, batch, interval e force).
  • cleanup (GET): elimina le pagine scadute e applica il limite di dimensione.
  • cron (GET): pulizia e poi precaricamento in una sola chiamata.
  • purge (POST): svuota ciò che indica scope: all; type (aggiungi type = product, category, cms, home o other); product, category, cms, manufacturer o supplier (aggiungi id); url (aggiungi url = l’indirizzo della pagina).

Esempio, da uno script dopo un’importazione del catalogo:

SHOP=https://il-tuo-negozio.com

curl -X POST \
  -H "X-WPC-Token: IL_TUO_TOKEN" \
  -d action=purge \
  -d scope=category \
  -d id=12 \
  "$SHOP/module/wepresta_cache_pro/api"

Compatibilità e altri sistemi

  • Altri moduli di cache: tieni una sola cache di pagine complete. La dashboard ti avvisa se ne rileva un’altra.
  • CDN e reverse proxy: le pagine vengono servite con Cache-Control: private, quindi una CDN non le conserva e interroga sempre il tuo negozio; è la cache del modulo a fare il lavoro. Usa la CDN per immagini, script e stili.
  • nginx: aggiungi la regola location della sezione Installazione per bloccare il download diretto della cartella della cache.
  • PHP-FPM: con PHP-FPM la pagina viene inviata al visitatore prima di essere salvata; senza, il visitatore che genera una pagina attende un po’ più a lungo.
  • Compressione tramite PHP (zlib.output_compression): il modulo invia allora la copia non compressa e lascia che sia PHP a comprimerla.
  • Statistiche di PrestaShop: le pagine servite dalla cache non vengono contate dalle statistiche di visita di PrestaShop (Statistiche > Visite). Usa Google Analytics o i log del server per contare le visite.
  • Temi: qualsiasi tema. L’aggiornamento del blocco carrello ha impostazioni pronte per i temi Classic e Hummingbird.

FAQ

Cos’è una full page cache su PrestaShop?

Una full page cache salva l’HTML finale di una pagina e invia quella copia ai visitatori successivi, invece di rieseguire PrestaShop, i suoi moduli, le query SQL e i template a ogni richiesta. Su un negozio PrestaShop accorcia il tempo di risposta del server per le pagine condivise da molti visitatori: home page, categorie, prodotti e pagine CMS.

In che modo questo modulo può velocizzare il mio negozio?

Cache Pro invia la copia salvata di una pagina prima che PrestaShop la costruisca: il modulo non esegue alcuna query SQL e la pagina richiede una frazione delle query di una pagina generata. Le pagine salvate sono precompresse (Gzip, e Brotli se il tuo server ha l’estensione PHP), l’HTML può essere minimizzato e il precaricamento riempie la cache prima dell’arrivo dei visitatori. Il vantaggio dipende dal tuo hosting, dal tema e dai moduli: usa «Testa la mia cache» per verificarlo sul tuo negozio.

Il carrello e le informazioni del cliente restano esatti?

Sì. I clienti connessi e i visitatori con prodotti nel carrello ricevono sempre pagine normali costruite da PrestaShop, quindi nulla di personale viene salvato o mostrato a qualcun altro. Se preferisci che anche i visitatori con un carrello ricevano pagine salvate, un’opzione avanzata invia la pagina salvata e aggiorna il blocco carrello con una piccola richiesta a pagina caricata, con impostazioni pronte per i temi Classic e Hummingbird.

Sì. Modificare un prodotto, una combinazione, un’immagine, un marchio o un fornitore elimina le sue pagine e gli elenchi che lo mostrano. Cambiare un prezzo, un prezzo specifico, una promozione o una giacenza (anche tramite un ordine) elimina le pagine che mostrano il prodotto. Categorie, pagine CMS, valute, tasse, lingue, moduli e cambi di tema aggiornano l’intero negozio. Una pagina che mostra una promozione che inizia o finisce più tardi non viene mai conservata oltre quel momento. Gli svuotamenti funzionano anche quando la cache è disattivata.

A cosa serve il warm-up (precaricamento) della cache?

Visita le tue pagine importanti prima dell’arrivo dei visitatori: home page, categorie, più venduti, novità, marchi, fornitori, prodotti e pagine CMS, in tutte le lingue e, se vuoi, nella versione mobile. Dopo un’installazione, uno svuotamento completo o un grande aggiornamento del catalogo, i primi visitatori ricevono così pagine salvate invece di attendere una generazione normale. Avvialo dalla dashboard o da un’attività pianificata.

Il modulo è adatto al multilingua, multivaluta e multinegozio?

Sì. Viene conservata una copia distinta per ogni negozio, indirizzo, lingua, valuta e dispositivo (desktop o mobile), e per i visitatori che hanno i cookie che scegli (il consenso ai cookie, per esempio). Con più negozi, ciascuno ha le proprie impostazioni, pagine salvate, statistiche e precaricamento.

È possibile impostare una durata della cache diversa in base al tipo di pagina?

Sì. Ogni tipo di pagina (home page, prodotti, categorie, pagine CMS, altri elenchi) ha il proprio interruttore e la propria durata, con valori consigliati e un minimo di 60 secondi. Una pagina modificata nel back office viene aggiornata subito, qualunque sia la sua durata.

È compatibile con PrestaShop 1.7.8, 8 e 9?

Sì: PrestaShop 1.7.8, 8.0+ e 9.1+, con PHP 7.4 o successivo. PrestaShop 1.7.7 e precedenti, e 9.0, non sono supportati. Un solo archivio va bene per tutte queste versioni. Il modulo funziona con i temi Classic e Hummingbird e con i temi di terze parti.

Come verificare che la cache funzioni correttamente?

Fai clic su «Testa la mia cache» nella dashboard: visita la tua home page due volte e ti dice se la prima visita è stata salvata e la seconda servita dalla cache, con i due tempi di risposta. Puoi anche caricare una pagina due volte con gli strumenti per sviluppatori del browser aperti e leggere l’intestazione di risposta X-WP-Cache: MISS la prima volta, HIT la seconda, BYPASS quando PrestaShop ha risposto di proposito. La dashboard elenca anche i motivi per cui alcune visite non hanno usato la cache.

Quali pagine non vengono mai salvate?

Carrello, ordine, account cliente, risultati di ricerca, modulo di contatto e pagine di altri moduli non vengono mai salvati, come non lo sono l’invio di moduli, le richieste Ajax, la modalità manutenzione e la geolocalizzazione, né le pagine che escludi per URL, indirizzo IP, cookie, prodotto, categoria o pagina CMS. I clienti connessi e i visitatori con un carrello ricevono pagine normali (o pagine salvate con il blocco carrello aggiornato, se scegli questa opzione).

I primi visitatori vedranno ancora pagine lente?

La prima visita a una pagina la costruisce come al solito e la salva; i visitatori successivi ricevono la copia salvata. Il precaricamento elimina questa prima attesa visitando le tue pagine in anticipo, e puoi avviarlo da un’attività pianificata dopo ogni svuotamento.

Il modulo migliora la SEO?

Indirettamente. Una risposta del server più rapida sulle pagine che Google e i tuoi visitatori aprono più spesso migliora l’esperienza utente e le prestazioni tecniche del negozio, e questo può aiutare la tua visibilità. I parametri di tracciamento vengono ignorati e le pagine 2, 3… mantengono il proprio contenuto, così motori di ricerca e visitatori ricevono la pagina giusta.

È compatibile con una CDN o con un altro modulo di cache?

Tieni una sola cache di pagine complete: la dashboard ti avvisa se ne rileva un’altra. Una CDN o un reverse proxy davanti al negozio va bene: le pagine vengono inviate con Cache-Control: private, quindi la CDN non le conserva e Cache Pro fa il lavoro; usa la CDN per immagini, script e stili.

Si può controllare la cache da un ERP, un PIM o uno script?

Sì. Un indirizzo di attività pianificata e un’API protetti da un token segreto permettono ai tuoi strumenti di svuotare tutto, un tipo di pagina, un prodotto, una categoria, una pagina CMS, un marchio, un fornitore o un indirizzo, avviare il precaricamento e leggere le statistiche con una semplice richiesta HTTP. Il token può essere rigenerato in qualsiasi momento.

Cosa succede quando aggiorno dalla versione 1.0.0?

Installa il nuovo archivio sopra il vecchio. Lo stato attivo o disattivo, le durate, le tue esclusioni (URL, cookie, indirizzi IP) e la velocità del precaricamento vengono conservati; le quattro esclusioni di URL suggerite dalla versione 1.0.0 vengono rimosse, perché quelle pagine non vengono comunque mai salvate; i file obsoleti vengono eliminati e la cache viene svuotata una volta. I visitatori con un carrello ricevono ora pagine normali; attiva l’opzione del blocco carrello se vuoi che ricevano pagine salvate.

Devo modificare la configurazione del mio server?

Non con Apache: la cartella della cache è protetta da un file .htaccess. Con nginx aggiungi una regola che blocchi il download diretto della cartella della cache; la dashboard ti dice se la cartella può essere scaricata dal web. Non serve altro su hosting condiviso, VPS, server dedicato o cloud.


Risoluzione dei problemi

Una pagina non viene salvata

Apri la dashboard: Pagine non servite dalla cache elenca i motivi (cliente, carrello, URL escluso, parametro sconosciuto, manutenzione, geolocalizzazione, risposta non salvabile…). Controlla l’intestazione di risposta X-WP-Cache e, con le intestazioni di diagnostica attive, X-WP-Cache-Reason.

Il test dice che il modulo non viene raggiunto

La risposta non contiene alcuna intestazione della cache: un’altra cache è davanti al negozio, il modulo è disattivato o l’indirizzo è protetto da una password (compila l’autenticazione HTTP nelle impostazioni).

Un prezzo, una giacenza o un testo sono obsoleti

Prodotti, prezzi, promozioni, giacenze, immagini, categorie e pagine CMS svuotano da soli le pagine giuste. Le modifiche fatte fuori da PrestaShop (SQL diretto, importazioni che non usano gli oggetti di PrestaShop, file del tema) non vengono rilevate: usa Svuota tutta la cache, il pulsante Svuota cache di PrestaShop o l’API.

Il precaricamento segnala errori

L’elenco degli errori mostra l’indirizzo e il messaggio. Cause tipiche: il negozio protetto da password (compila l’autenticazione HTTP), un firewall che blocca le richieste del server a se stesso, un certificato SSL non valido su un sito di staging.

La cartella della cache può essere scaricata

Blocca la cartella nella configurazione del tuo server web (vedi Installazione).


Changelog

Versione 2.0.0

Novità

  • Il modulo funziona su PrestaShop 1.7.8, 8.0+ e 9.1+, con PHP 7.4 minimo, in un solo archivio.
  • Il menu del back office mostra Cache Pro, con la sua dashboard e le sue impostazioni, in francese, inglese, spagnolo, italiano e polacco.
  • Testa la mia cache visita la tua home page due volte e ti dice in pochi secondi se la cache funziona.
  • La dashboard mostra il tasso di successo, il guadagno di velocità, le pagine per tipo, un grafico per giorno, i motivi delle visite senza cache, gli ultimi svuotamenti e le verifiche.
  • Svuota una pagina dal suo indirizzo, un tipo di pagina o tutto, dalla dashboard.
  • Il precaricamento funziona senza una pagina aperta: un indirizzo di attività pianificata lo avvia, con quattro velocità, tutte le lingue e una versione mobile facoltativa.
  • Un’API protetta da un token svuota tutto, un tipo di pagina, un prodotto, una categoria, una pagina CMS, un marchio, un fornitore o un indirizzo, avvia il precaricamento e restituisce le statistiche.
  • I visitatori con un carrello possono ricevere pagine salvate con il blocco carrello aggiornato dopo il caricamento; un pulsante rileva il blocco dei temi Classic e Hummingbird.
  • Esclusioni per cookie, indirizzo IP o intervallo, prodotto, categoria, pagina CMS e tipo di pagina, oltre agli URL; un’espressione regolare o un indirizzo non validi vengono rifiutati con una spiegazione.
  • I cookie che cambiano la pagina, come il consenso ai cookie, hanno la propria copia salvata.
  • Le pagine 2, 3… e gli ordinamenti di una categoria hanno la propria copia salvata, così come ogni valuta.
  • Le pagine non vengono mai conservate oltre l’inizio o la fine di una promozione programmata.
  • La cache resta sotto una dimensione massima eliminando le pagine più vecchie, e l’attività pianificata elimina i file scaduti.
  • L’intestazione di risposta X-WP-Cache indica HIT, MISS o BYPASS per ogni pagina.
  • Con più negozi, ogni negozio ha le proprie impostazioni, pagine salvate, statistiche e precaricamento, e una pagina ti chiede di scegliere un negozio dalla vista «tutti i negozi».

Miglioramenti

  • Una pagina salvata viene inviata senza alcuna query SQL né scrittura del modulo.
  • Una pagina viene scritta per intero o per niente: un visitatore non riceve mai una pagina troncata.
  • Quando una pagina scade, un visitatore la rigenera mentre gli altri ricevono la copia precedente per al massimo 5 minuti; uno svuotamento non serve mai una copia vecchia.
  • Gli svuotamenti funzionano anche con la cache disattivata, quindi una pagina non può tornare obsoleta.
  • Il pulsante Svuota cache di PrestaShop, le modifiche a moduli e tema e le principali impostazioni del negozio aggiornano le pagine salvate.
  • L’archivio pesa circa 240 KB invece di 27 MB.

Correzioni

  • Il testo «Powered by Module Starter» e la pagina pubblica /module/wepresta_cache_pro/display non esistono più.
  • Le pagine 2, 3…, gli ordinamenti e gli elenchi filtrati non mostrano più la prima pagina.
  • Cambiare valuta non mostra più i prezzi di un’altra valuta.
  • La pagina di manutenzione viene mostrata mentre il negozio è in modalità manutenzione.
  • I clienti connessi e i visitatori con un carrello non ricevono più una pagina salvata costruita per qualcun altro.
  • Modificare un prodotto, un prezzo, una promozione, una giacenza, una categoria o una pagina CMS aggiorna subito le pagine salvate, invece di attendere la fine della loro durata.
  • I cookie esclusi vengono presi in considerazione, e le esclusioni di URL suggerite che nascondevano anche pagine legittime, come le carte regalo, sono sparite.
  • Lo script che aggiorna il blocco carrello è ora nell’archivio, quindi il blocco non resta più vuoto.
  • I browser non conservano più una pagina salvata dopo che un visitatore accede o aggiunge un prodotto al carrello.
  • I file e le impostazioni vengono eliminati quando disinstalli il modulo.
  • Il tasso di successo è esatto: gli svuotamenti non lo azzerano più.

Dopo l’aggiornamento: lo stato attivo o disattivo, le durate, le tue esclusioni (URL, cookie, indirizzi IP) e la velocità del precaricamento vengono conservati. Le quattro esclusioni di URL suggerite dalla versione 1.0.0 vengono rimosse, perché quelle pagine non vengono comunque mai salvate. I file obsoleti vengono eliminati e la cache viene svuotata una volta. I visitatori con un carrello ricevono ora pagine normali: attiva l’opzione del blocco carrello se vuoi che ricevano pagine salvate.

Versione 1.0.0

  • Rilascio iniziale del modulo
  • Implementazione della Full Page Cache
  • Gestione dei contesti multilingua, multi-valuta e multistore
  • Invalidazione automatica intelligente
  • Compressione Gzip e Brotli
  • Minificazione HTML
  • Dashboard delle performance
  • Warm-up della cache
  • Blocchi dinamici AJAX

Supporto

Per qualsiasi assistenza, contattaci dalla tua area clienti WePresta o via e-mail a mail@wepresta.shop, in base all’opzione di supporto del tuo piano.

Prima di contattare il supporto, prepara:

  • la versione di PrestaShop e di PHP
  • l’indirizzo della pagina interessata e la sua intestazione X-WP-Cache
  • il risultato di Testa la mia cache e le verifiche della dashboard
  • schermate
  • i log di PrestaShop, se disponibili

Vedi il modulo e le offerte

Caricamento in corso ...