# Rilevare la lingua e il paese del visitatore (senza reindirizzamento)

> Presentazione Il modulo rileva il paese del visitatore (indirizzo IP) e le lingue del suo browser, poi mostra un banner che suggerisce la stessa pagina nel negozio o nella lingua…

- Pagina: <https://www.datafirefly.com/it/documentation/language-country-geolocation-prestashop/>
- Lingua: it
- Aggiornato il: 2026-10-07
- Altre lingue: [fr](https://www.datafirefly.com/documentation/language-country-geolocation-prestashop/index.md), [en](https://www.datafirefly.com/en/documentation/language-country-geolocation-prestashop/index.md), [es](https://www.datafirefly.com/es/documentation/language-country-geolocation-prestashop/index.md), [de](https://www.datafirefly.com/de/documentation/language-country-geolocation-prestashop/index.md), [pl](https://www.datafirefly.com/pl/documentation/language-country-geolocation-prestashop/index.md), [nl](https://www.datafirefly.com/nl/documentation/language-country-geolocation-prestashop/index.md), [pt](https://www.datafirefly.com/pt/documentation/language-country-geolocation-prestashop/index.md)
- Indice: <https://www.datafirefly.com/it/documentation/llms.txt>

## Presentazione

Il modulo rileva il paese del visitatore (indirizzo IP) e le lingue del suo browser, poi mostra un banner che suggerisce la stessa pagina nel negozio o nella lingua più adatti. Non reindirizza mai: i crawler non vedono il banner e i tuoi tag hreflang restano intatti.

Compatibile con PrestaShop da 8.0 a 9.x, negozio singolo e multinegozio. Il banner compare solo se ci sono almeno due destinazioni attive (due lingue o due negozi).

## Installazione

1. In **Moduli > Gestione moduli**, fai clic su **Carica un modulo** e invia il file ZIP.
2. Il modulo crea automaticamente una destinazione per ogni coppia negozio e lingua attiva.
3. Apri la pagina del modulo con il pulsante **Configura** o dal menu **Internazionale > Suggerimento lingua e paese**.

In multinegozio, installa il modulo nel contesto «Tutti i negozi» e verifica che sia attivato su ogni negozio di destinazione. Un'etichetta «Modulo non attivato su questo negozio» ti avvisa nella scheda Destinazioni.

## Attivare il rilevamento del paese

Il paese viene letto, in questo ordine:

- dall'header del tuo CDN (Cloudflare, CloudFront, Vercel);
- da un file MaxMind GeoLite2 se ne hai uno (percorso configurabile);
- dal database integrato, gratuito e di pubblico dominio.

Per installare il database integrato, fai clic su **Installa il database** nella dashboard o in **Regole e rilevamento**. Il file (circa 8 MB, IPv4 e IPv6) viene scaricato in `var/dflocalesuggest/` e letto in locale: nessun IP dei visitatori viene inviato a terzi. Lo stato ne mostra la data e consiglia un aggiornamento dopo 45 giorni.

Se il tuo hosting blocca le connessioni in uscita, il download fallisce con un messaggio chiaro. Metti allora un file .mmdb sul server e indicane il percorso in **Regole e rilevamento**.

## Destinazioni

Ogni riga è una coppia negozio e lingua che il banner può suggerire.

- **Etichetta**: sostituisce il nome del negozio nel banner (ad esempio «USA»).
- **Paesi**: codici ISO separati da virgole (IT, SM, CH). Vuoto significa qualsiasi paese. Un altro negozio limitato ad altri paesi non viene mai suggerito a un visitatore il cui paese è noto.
- **Lingue del browser**: codici come it, it-ch, en-gb.
- **Ordine**: trascina le righe per decidere tra due destinazioni con lo stesso punteggio.

**Aggiungi le coppie mancanti** crea le righe dei nuovi negozi o lingue senza toccare quelle esistenti. Se il modulo DataFirefly Hreflang è installato, **Importa da DataFirefly Hreflang** riprende i tuoi codici (it-CH dà la lingua it e il paese CH).

## Aspetto

Scegli un tema, i quattro colori, il raggio degli angoli, la dimensione del testo e l'effetto vetro smerigliato. Il posizionamento si imposta separatamente per desktop (barra in alto o in basso, scheda a sinistra o a destra) e per mobile (scheda flottante, barra). L'anteprima dal vivo, a destra, mostra il risultato su desktop e mobile prima del salvataggio.

- **Promemoria compatto**: se il visitatore ignora il banner e continua a navigare, le pagine successive mostrano solo una pillola.
- **Ritardo di visualizzazione**: il banner compare dopo il caricamento della pagina più questo ritardo.
- **Nascondi dopo un rifiuto**: per quanto tempo un visitatore che ha cliccato «Resta qui» non viene più disturbato.

## Testi

Il banner è scritto nella lingua suggerita: un visitatore tedesco lo legge in tedesco su un negozio italiano. Ogni lingua ha i suoi testi, con variabili inseribili con un clic: `{language}`, `{country}`, `{store}`, `{currency}`. Un campo vuoto usa il testo integrato.

## Regole e rilevamento

- **Quando paese e lingua non coincidono**: prevale il paese (negozio che spedisce al visitatore) o prevale la lingua.
- **Rispetta i visitatori multilingue**: nessun suggerimento di lingua se la lingua attuale è tra quelle del browser.
- **Nascondi ai clienti connessi**.
- **Pagine senza banner**: controller esclusi, carrello e checkout per impostazione predefinita. Il carattere jolly è ammesso (module-miomodulo-*).
- **Attendi la chiusura del banner dei cookie**: i principali gestori del consenso vengono rilevati e l'elenco dei selettori CSS è modificabile.

## Provare prima della messa online

La scheda **Simulatore** indica, per un paese e delle lingue del browser, se il banner viene mostrato, con testo, link e punteggio di ogni destinazione. Per vedere il banner reale sul negozio, aggiungi il tuo IP in **Indirizzi IP di test** e apri una pagina con `?dfls_country=DE&dfls_lang=de`. Il link «Vedi sul negozio» del simulatore lo fa per te.

## Statistiche

La dashboard mostra i banner visualizzati (una volta per visita), i clic, i rifiuti, il tasso di clic, l'attività giornaliera e le classifiche per destinazione e per paese su 7, 30, 90 giorni o un anno. **Esporta CSV** scarica una riga per giorno, negozio di origine, destinazione e paese. I contatori sono aggregati: non viene salvato nessun IP, cookie o identificativo cliente.

## Comportamento lato visitatore

- Un visitatore che clicca sul suggerimento o cambia da solo negozio o lingua non riceve più suggerimenti sulla destinazione scelta.
- Il banner non viene mai mostrato ai crawler (Googlebot, Bingbot, Lighthouse) e porta `data-nosnippet`.
- L'HTML delle pagine è identico per tutti: il modulo funziona con LiteSpeed Cache, Varnish e i CDN.

## Per gli sviluppatori

Eventi DOM su `document`: `dfls:shown`, `dfls:accept`, `dfls:dismiss`. Con l'opzione attiva, gli eventi `dfls_shown`, `dfls_accept` e `dfls_dismiss` vengono inviati al `dataLayer` per Google Tag Manager. L'hook PHP `actionDflocalesuggestResponse` riceve la risposta per riferimento per modificare testo, link o destinazione.

## Risoluzione dei problemi

### Il banner non compare

Verifica che il banner sia attivo, che ci siano almeno due destinazioni valide, che la pagina non sia esclusa e di non aver già rifiutato o accettato un suggerimento in questo browser (svuota l'archiviazione locale del sito). Il simulatore indica perché una destinazione viene scartata.

### Il paese risulta «Sconosciuto» nel back-office

È normale se provi da un IP locale o privato. Usa il simulatore o i parametri di test.
