# DataFirefly Dealer Locator: modalità catalogo e mappa dei rivenditori

> Questo modulo trasforma un negozio PrestaShop 8 o 9 in una vetrina di marca: disattiva la vendita online su tutto o parte del catalogo, aggiunge un pulsante Dove acquistare nelle…

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

Questo modulo trasforma un negozio PrestaShop 8 o 9 in una vetrina di marca: disattiva la vendita online su tutto o parte del catalogo, aggiunge un pulsante Dove acquistare nelle schede prodotto e pubblica un elenco di rivenditori con mappa, orari, modulo di contatto e una pagina per ogni rivenditore.

## Installazione

1. In **Moduli > Gestione moduli**, clicca su **Carica un modulo** e invia il file ZIP.
2. Il modulo crea il menu **Vendi > Rete di rivenditori** con tre voci: Rivenditori, Richieste di contatto e Impostazioni.
3. La pagina dell'elenco viene creata automaticamente con un URL tradotto per lingua: `/dove-acquistare`, `/where-to-buy`, `/ou-acheter`, `/donde-comprar` e così via.

Per aggiornare, basta caricare il nuovo ZIP: gli script di aggiornamento aggiungono le colonne e gli hook mancanti. Se l'elenco o le pagine dei rivenditori restituiscono un errore 404, salva una volta **Parametri negozio > Traffico e SEO** per rigenerare il file .htaccess.

Compatibilità: PrestaShop da 8.0 a 9.x, multinegozio, nessuna dipendenza Composer. Traduzioni incluse in inglese, francese, spagnolo, tedesco, italiano, olandese, polacco e portoghese.

## Configurare la modalità catalogo

Apri **Rete di rivenditori > Impostazioni**, blocco **Modalità catalogo**. La modalità catalogo viene applicata al volo: l'impostazione nativa di PrestaShop non viene mai modificata e tutto torna normale se disattivi il modulo.

### Vendita online

- **Attivata**: la modalità catalogo è spenta, il modulo funziona solo come elenco.
- **Disattivata per tutto il catalogo**: nessun prodotto può più essere aggiunto al carrello.
- **Disattivata solo per la selezione**: solo le categorie, marche e prodotti scelti sotto passano in modalità catalogo.
- **Disattivata per tutto tranne la selezione**: la selezione resta in vendita online, il resto passa in modalità catalogo.

### Prezzi, messaggio e carrello

- **Nascondi i prezzi**: se disattivato, i prezzi restano visibili. Puoi allora mostrare un'etichetta sotto il prezzo, per impostazione predefinita Prezzo consigliato al pubblico.
- **Messaggio sulla scheda prodotto**: testo mostrato sopra il pulsante, ad esempio Questo prodotto è venduto esclusivamente nella nostra rete di rivenditori autorizzati. Lascia vuoto per nasconderlo.
- **Reindirizza il carrello e il checkout all'elenco dei rivenditori**: in modalità catalogo completa, le pagine carrello e ordine rimandano all'elenco.

Il carrello è bloccato lato server: un'aggiunta forzata tramite un URL viene rifiutata.

### Gruppi di clienti esenti

Seleziona i gruppi che possono continuare a ordinare online. Esempio: un gruppo Rivenditori che ordina la merce sul sito mentre il pubblico vede solo il catalogo.

## Il pulsante Dove acquistare

Blocco **Pulsante Dove acquistare** delle impostazioni:

- **Prodotti interessati**: solo i prodotti che non si possono acquistare online, oppure tutti i prodotti.
- **Testo del pulsante**, traducibile.
- **Al clic**: aprire una finestra con la mappa e i rivenditori del prodotto, oppure andare all'elenco filtrato sul prodotto.
- **Mostra la disponibilità sotto il pulsante**: Disponibile presso 14 rivenditori e poi il rivenditore più vicino non appena il visitatore ha già fatto una ricerca per località.
- **Mostra i rivenditori online**: i rivenditori di tipo Rivenditore online compaiono a parte, con un pulsante verso il prodotto sul loro negozio.

Il pulsante elenca solo i rivenditori che propongono il prodotto (scheda Prodotti venduti di ogni rivenditore). La finestra si apre sull'ultima città cercata dal visitatore.

## Elenco e mappa

Blocco **Elenco rivenditori e mappa**:

- **Testo introduttivo** sopra la ricerca e **colore di accento** di pulsanti, marcatori e raggruppamenti.
- **Centro e zoom predefiniti** della mappa, **unità** (km o miglia), **scelte del raggio**, **raggio predefinito** (0 = nessun limite) e **numero massimo di risultati**.
- **Stile della mappa**: CARTO Voyager, CARTO Positron, OpenStreetMap o server di tile personalizzato (URL https con {z}, {x} e {y}).
- **Chiedi prima di caricare la mappa**: per il GDPR, il server di tile riceve l'IP del visitatore solo dopo un clic.
- **Raggruppa i marcatori vicini** e **un colore di marcatore per tipo**, con legenda sulla mappa.
- **Elenco completo dei rivenditori per paese** sotto la mappa, leggibile dai motori di ricerca.
- **Una pagina per ogni rivenditore**: vedi più avanti.

Il visitatore cerca per città o CAP, oppure usa la propria posizione. Può filtrare per tipo di rivenditore e selezionare Aperto ora. Su mobile, un pulsante alterna tra elenco e mappa. La mappa Leaflet è ospitata nel modulo: non serve nessuna chiave API.

## Geocodifica

La geocodifica trasforma un indirizzo o una città in coordinate. I risultati sono memorizzati nella cache del database.

- **OpenStreetMap Nominatim**: gratuito, limitato a una richiesta al secondo. Inserisci l'**email di contatto**, consigliata dalla policy di utilizzo di Nominatim.
- **Google Geocoding API**: richiede una chiave API Google.
- **Limita le ricerche a questi paesi**: codici ISO separati da virgole, ad esempio `it,ch,fr`.

## Gestire i rivenditori

Menu **Rete di rivenditori > Rivenditori**. La scheda di un rivenditore ha quattro schede.

### Generale

- **Nome**, **tipo** (negozio, distributore, showroom, centro assistenza, rivenditore online), **logo** (JPG, PNG, WebP o GIF, massimo 2 MB).
- **Partner**: badge Partner ufficiale, mostrato per primo quando non è indicata una posizione.
- **Telefono**, **sito web** ed **email**: l'email riceve le richieste di contatto e non viene mai mostrata quando il modulo di contatto è attivo.
- **Link al prodotto sul negozio del rivenditore**: facoltativo, aggiunge un pulsante Acquista online. Tag disponibili: `{reference}` `{ean13}` `{upc}` `{mpn}` `{name}` `{id_product}`. Esempio: `https://shop.example.com/search?q={ean13}`
- **Accesso all'area rivenditore**: email di un account cliente esistente (vedi Area rivenditore).

### Indirizzo e mappa

Il rivenditore viene posizionato sulla mappa automaticamente al salvataggio. Il pulsante **Trova la posizione dall'indirizzo** rilancia la geocodifica, e puoi cliccare sulla mappa o trascinare il marcatore per regolare la posizione.

### Descrizione e orari

Descrizione multilingua, griglia degli orari su 7 giorni con due fasce al giorno (la seconda serve per la pausa pranzo), pulsanti per copiare il lunedì sugli altri giorni e campo **Da sapere** per festività o chiusure stagionali. Un giorno vuoto significa chiuso. Gli orari alimentano il badge e il filtro Aperto ora, calcolati nel fuso orario del negozio.

### Prodotti venduti

Scegli **Tutta la gamma** oppure una selezione di categorie, marche e prodotti. Solo i rivenditori che propongono un prodotto compaiono nel suo pulsante Dove acquistare.

## Importazione ed esportazione CSV

Pulsante **Importa CSV** dell'elenco dei rivenditori. Formato: UTF-8, separato da punto e virgola, prima riga con i nomi delle colonne. Il modo più semplice è esportare prima i tuoi rivenditori per ottenere un file pronto all'uso.

Colonne: `id;name;type;active;featured;address1;address2;postcode;city;country_iso;phone;email;website;product_url;latitude;longitude;scope;categories;manufacturers;products;description;hours;opening`

- Solo `name` è obbligatorio. Lascia `id` vuoto per creare un rivenditore, oppure seleziona l'aggiornamento dei rivenditori esistenti.
- `type`: retailer, distributor, showroom, service oppure online. `country_iso`: codice di due lettere.
- `scope`: 0 per tutta la gamma, 1 per le categorie, marche e prodotti indicati, separati da una barra verticale: `3|8|12`.
- `opening`: numero del giorno (1 = lunedì) poi fasce orarie, giorni separati da una barra: `1=09:00-12:00,14:00-19:00/2=09:00-19:00/6=10:00-18:00`

Dopo un'importazione senza coordinate, clicca su **Posiziona sulla mappa i rivenditori importati**: la geocodifica avviene in blocchi, un indirizzo al secondo. Tieni la pagina aperta durante l'operazione.

## Richieste di contatto

Blocco **Richieste di contatto** delle impostazioni: attiva il modulo su ogni rivenditore, l'invio via email al rivenditore, una copia al tuo indirizzo, il testo della casella di consenso e la pagina dell'informativa sulla privacy.

Il modulo è protetto contro lo spam (campo trappola, tempo minimo, cinque invii all'ora per indirizzo IP). Le richieste sono elencate in **Rete di rivenditori > Richieste di contatto**, con filtri, vista dettagliata, stato gestita o da gestire ed esportazione CSV.

## Area rivenditore

Attiva **Area rivenditore nell'account cliente**, poi inserisci nella scheda di un rivenditore l'email di un account cliente esistente. Dopo l'accesso, questo cliente vede un riquadro **Area rivenditore** in Il mio account. Può:

- modificare telefono, sito web, orari, campo Da sapere e descrizione nella propria lingua;
- leggere le richieste di contatto e segnarle come gestite;
- vedere le statistiche degli ultimi 30 giorni: visite al sito, clic sul telefono, indicazioni, richieste.

Indirizzo e posizione sulla mappa restano gestiti dal marchio. Uno stesso account può gestire più rivenditori.

## Pagine rivenditore e SEO

Con l'opzione **Una pagina per ogni rivenditore**, ogni rivenditore (tranne quelli online) ha una pagina come `/dove-acquistare/12/lumiere-co-lyon`: indirizzo, mappa, orari, descrizione, modulo di contatto e rivenditori vicini. Le pagine contengono dati strutturati Store con orari schema.org e un URL canonico, e reindirizzano con un 301 se cambiano nome o città. Vengono aggiunte automaticamente alla sitemap se il modulo Google Sitemap (gsitemap) è installato.

## Statistiche

La pagina di configurazione mostra l'attività degli ultimi 30 giorni: rivenditori più contattati con il dettaglio dei clic (sito, telefono, indicazioni, acquisto online, richieste) e prodotti con più clic su Dove acquistare.

## Integrazione nel tema

Il pulsante viene mostrato automaticamente tramite l'hook `displayProductAdditionalInfo`. Per posizionarlo altrove, usa il widget:

- ricerca rivenditori: `{widget name='dfdealerlocator'}`
- pulsante Dove acquistare di un prodotto: `{widget name='dfdealerlocator' id_product=$product.id}`

## Risoluzione dei problemi

### La mappa resta grigia

Il server di tile è probabilmente bloccato da una policy di sicurezza (CSP) o da un firewall. Autorizza il dominio dello stile scelto (basemaps.cartocdn.com o tile.openstreetmap.org) oppure usa un server personalizzato.

### Il pulsante Dove acquistare non compare

Verifica che il tema richiami l'hook `displayProductAdditionalInfo` nella scheda prodotto e che l'impostazione Prodotti interessati corrisponda al prodotto provato. Altrimenti inserisci il widget nel template del prodotto.

### Un indirizzo non viene trovato

Compila almeno la città o il CAP e il paese, poi clicca su Trova la posizione dall'indirizzo. Se l'indirizzo resta introvabile, posiziona il marcatore a mano sulla mappa.

### Errore 404 sull'elenco o su una pagina rivenditore

Rigenera il .htaccess salvando **Traffico e SEO** e verifica che l'URL semplificato della pagina `module-dfdealerlocator-directory` sia compilato in ogni lingua.
