PS PrestaShop Intermedio

Traffic Radar — Guida completa

Installare, configurare e gestire la dashboard in tempo reale Traffic Radar: contatore online umani/bot, rilevamento dei crawler IA, grafici, heatmap, controllo robots.txt ed esportazione CSV per PrestaShop 8 e 9.

Aggiornato Versione del modulo 1.1.1

Traffic Radar mostra in tempo reale chi visita il tuo negozio PrestaShop e separa i visitatori reali dai bot e dai crawler IA. Il modulo installa una dashboard dedicata in Statistiche → Traffic Radar: un contatore online istantaneo (umani contro bot), grafici di evoluzione, una heatmap di affluenza, i top crawler IA, un flusso di attività live, il controllo dei crawler IA tramite robots.txt e l’esportazione CSV. Questa guida copre l’installazione, le impostazioni, il funzionamento del rilevamento, ogni vista della dashboard, la privacy e la risoluzione dei problemi.

Installazione

  1. Scarica l’archivio dftrafficradar.zip dal tuo account DataFirefly.
  2. Back-office PrestaShop → ModuliCarica un modulo → invia lo ZIP.
  3. All’installazione, il modulo crea le sue due tabelle (df_traffic_visit e df_traffic_online), registra i suoi hook e aggiunge la scheda Statistiche → Traffic Radar.

Compatibile con PrestaShop 8.0 a 9.x, su PHP 7.4 a 8.3. Nessun override del tema, nessuna dipendenza da Composer, nessun CDN (Chart.js è incluso in locale). Multistore e multilingua (FR, EN, ES, DE, IT).

Configurazione

Vai su Moduli → DataFirefly Traffic Radar → Configura.

  • Attiva il tracciamento: interruttore principale. Se disattivato, nessuna visita viene registrata.
  • Registra bot / crawler IA: disattivalo per tracciare solo le visite umane.
  • Anonimizza gli indirizzi IP (GDPR): gli IP sono sempre sottoposti a hash; questa opzione maschera inoltre l’ultimo ottetto prima dell’hash.
  • Conservazione dei dati (giorni): le visite più vecchie vengono eliminate automaticamente. 0 = conservazione illimitata. Predefinito: 90.
  • Intervallo del heartbeat (secondi): con quale frequenza un visitatore online invia un segnale per restare conteggiato. Predefinito: 15.
  • Finestra «online» (secondi): un visitatore è considerato «online ora» se è stato visto entro questa finestra. Predefinito: 90.
  • Indirizzi IP esclusi: uno per riga (o separati da virgole). Ideale per ignorare il tuo traffico e quello del tuo team.

Aggiungi gli IP del tuo ufficio all’elenco degli esclusi subito dopo l’installazione, così i tuoi test non gonfiano le statistiche.

Come funziona il rilevamento

Traffic Radar combina due segnali complementari, il che gli consente di separare davvero gli umani dai crawler.

Rilevamento lato server

A ogni pagina vista, tramite l’hook actionFrontControllerSetMedia, il modulo classifica lo User-Agent rispetto a una base di oltre 40 firme (IA, motori di ricerca, SEO, social, monitoraggio) e gli assegna un tipo. È ciò che permette di catturare i crawler IA, che non eseguono quasi mai JavaScript.

Heartbeat lato client

Un piccolo script (tracker.js) invia periodicamente un segnale al controller front track per mantenere i visitatori reali conteggiati come «online» tra una pagina e l’altra. Poiché i bot non attivano questo battito, il contatore degli umani in tempo reale resta pulito.

Le richieste AJAX e le sotto-richieste dei moduli (aggiunta al carrello, lista dei desideri, recensioni, così come lo stesso heartbeat) non vengono conteggiate come pagine viste: vengono registrate solo le pagine navigabili reali.

La dashboard

La scheda Statistiche → Traffic Radar raccoglie tutte le viste, filtrabili per periodo (oggi, 24 h, 7 / 30 / 90 giorni, personalizzato) e per pubblico (tutto il traffico, umani, tutti i bot, o un tipo di bot preciso).

  • Online ora: contatore in tempo reale separato in umani e bot, aggiornato alla cadenza del heartbeat.
  • KPI: visite, sessioni uniche, visite umane, visite bot e hit IA / LLM. Ogni KPI mostra la sua variazione (▲ / ▼ in percentuale) rispetto al periodo precedente di pari durata.
  • Visite nel tempo: grafico umani contro bot, con granularità automatica (oraria o giornaliera a seconda del periodo).
  • Ripartizione del pubblico: donut per tipo (umano, IA, motori, SEO, social, monitoraggio, altri).
  • Top crawler IA: barre orizzontali dei crawler IA più attivi (GPTBot, ClaudeBot, PerplexityBot, Google-Extended, Bytespider…).
  • Heatmap di affluenza: griglia ora × giorno della settimana.
  • Top pagine, referrer e paesi: classifiche a barre.
  • Flusso di attività live: ultime visite con tipo, identità, pagina, dispositivo e paese.

Il contatore in tempo reale

Il blocco «Online ora» si basa sulla tabella df_traffic_online, aggiornata a ogni pagina vista e a ogni heartbeat. Un visitatore scompare dal contatore non appena non è più stato visto per la durata definita dalla finestra «online».

Se il contatore resta a zero mentre sono presenti dei visitatori, verifica di usare la versione 1.1.1 o superiore: una differenza di fuso orario tra PHP e MySQL poteva falsare la finestra in tempo reale nelle versioni precedenti. La correzione allinea la lettura all’orologio di scrittura.

Radar dei nuovi crawler

Il pannello «Nuovi crawler rilevati» evidenzia i bot la cui primissima visita registrata ricade nel periodo analizzato. È lo strumento ideale per individuare immediatamente l’arrivo di un nuovo crawler IA sul tuo catalogo: nome del bot, tipo, data di prima comparsa e numero di hit.

Controllo dei crawler IA (robots.txt)

Il centro di controllo elenca 25 crawler IA noti con il loro token robots.txt ufficiale. Per ciascuno scegli «autorizzato» o «bloccato» tramite una casella; i crawler di addestramento sono pre-selezionati come bloccati per impostazione predefinita, mentre gli agenti che rispondono a una richiesta dell’utente vengono lasciati passare.

  • I crawler effettivamente visti sul tuo negozio sono segnalati con un badge.
  • Due preimpostazioni con un clic: «Blocca tutto» e «Ripristina consigliato».
  • Il modulo genera in tempo reale un blocco robots.txt pronto da incollare, con un pulsante Copia.

In questa versione, l’applicazione è volutamente manuale: copi il blocco generato nel tuo file robots.txt. Il modulo non scrive mai il file automaticamente, il che garantisce che le tue direttive esistenti non vengano mai sovrascritte a sorpresa.

Widget sulla dashboard iniziale del back-office

Il modulo aggiunge una scheda «Traffic Radar» nella colonna destra della dashboard iniziale del back-office (hook dashboardZoneTwo): un contatore online in diretta (umani / bot) e i contatori del giorno (visite, umani, bot, IA / LLM), con una scorciatoia verso la dashboard completa.

Esportazione CSV

Il pulsante CSV nella barra degli strumenti esporta tutto il traffico corrispondente ai filtri attivi (periodo e pubblico). Il file è codificato in UTF-8 con BOM per aprirsi correttamente in Excel, e contiene una riga per visita: data, tipo, nome del bot, dispositivo, pagina, referrer, paese, ecc.

Privacy e GDPR

  • Nessun indirizzo IP grezzo viene memorizzato: solo hash SHA-1 con sale.
  • L’anonimizzazione opzionale maschera l’ultimo ottetto (IPv4) o gli ultimi gruppi (IPv6) prima dell’hash.
  • La conservazione è configurabile, con purga automatica probabilistica: nessun cron richiesto.
  • L’elenco di IP esclusi permette di ignorare il tuo traffico.

La pulizia dei dati vecchi viene eseguita in modo probabilistico con il traffico. Se preferisci una pulizia deterministica, puoi richiamare la purga da un cron, ma non è necessario.

Compatibilità e note tecniche

  • PrestaShop 8.0 a 9.x, multistore e multilingua.
  • Architettura PSR-4 sotto il namespace DataFirefly/TrafficRadar (separatore backslash) con autoloader incluso, senza Composer.
  • Controller di amministrazione legacy (ModuleAdminController) per la compatibilità PS8 / PS9.
  • Endpoint AJAX di back-office tramite il 4° argomento di getAdminLink(); risposte JSON emesse da un metodo dedicato.
  • Hook utilizzati: actionFrontControllerSetMedia, displayHeader, dashboardZoneTwo.
  • Due tabelle utf8mb4 indicizzate: df_traffic_visit (registro delle visite) e df_traffic_online (presenza, chiave unica per sessione).
  • Chart.js incluso in locale, nessuna chiamata a CDN.

FAQ e risoluzione dei problemi

«Online ora» resta a zero. Assicurati di essere alla versione 1.1.1 o superiore (correzione del fuso orario tra PHP e MySQL). Verifica anche che il tracciamento sia attivo e che il tuo IP non sia nell’elenco degli esclusi.

Comparivano voci «module-…» nel flusso. Corretto nella 1.1.1: le richieste AJAX e le sotto-richieste dei moduli non vengono più conteggiate come pagine viste.

I crawler IA vengono davvero rilevati? Sì. Il rilevamento lato server li cattura anche senza JavaScript. Le firme coprono OpenAI, Anthropic, Google-Extended, Perplexity, ByteDance, Meta, Mistral, Cohere, Amazon, Common Crawl e altri.

Il modulo rallenta il negozio? No. La classificazione dello User-Agent è un semplice confronto di stringhe in memoria, e il tracciamento si riduce a un insert e un upsert indicizzati per pagina vista.

Una cache a pagina intera falsa i numeri? Le pagine servite da una cache a pagina intera non passano da PHP e quindi non vengono riconteggiate lato server. L’heartbeat JavaScript continua comunque a mantenere i visitatori umani conteggiati come online.

Compatibile con PrestaShop 1.7? No, solo PrestaShop 8.0 a 9.x.

Questa pagina ti è stata utile?

Ancora bloccato? Contatta l'assistenza