Mappe e geolocalizzazione

Store locator e mappe interattive: geocodifica, query spaziali, prestazioni e SEO locale

Come si costruisce uno store locator che regge: geocodifica in importazione, query per distanza, clustering, tile vettoriali, mappa caricata solo quando serve, costi dei fornitori e una pagina per ogni sede.

Fabio Folgori5 min di lettura

Mappa con spilli colorati che indicano le destinazioni
Foto di Paul Marlow su Unsplash

Uno store locator sembra un componente semplice: una mappa con dei segnaposto e un campo di ricerca. Con dieci sedi lo è. Con centinaia o migliaia di punti, dati che cambiano, utenti da telefono su reti lente e l'obiettivo di farsi trovare su Google per «negozio vicino a me», diventa un piccolo progetto di architettura: dati, ricerca spaziale, rendering e SEO.

I dati prima della mappa

Una fonte affidabile

Le sedi arrivano da un gestionale, un foglio o un CMS. La prima decisione è chi è la fonte di verità e come si sincronizza: a ogni modifica, ogni notte, a mano. Con dati da un sistema esterno, l'importazione va gestita come un'integrazione vera, con validazione e segnalazione degli errori.

Geocodifica in importazione, non a ogni visita

Trasformare un indirizzo in coordinate costa (in tempo e spesso in denaro) e a volte sbaglia. Si fa una volta, all'importazione, si salvano latitudine e longitudine, si segnalano i risultati con bassa precisione per un controllo manuale. Geocodificare a ogni visita è il modo più rapido per far esplodere i costi e i tempi di risposta.

La ricerca per distanza

La domanda tipica è «le sedi più vicine a questo punto». Le soluzioni, in ordine di scala:

  • pochi punti: il calcolo della distanza (formula dell'emisenoverso) si fa direttamente nel browser su un file statico;
  • centinaia o migliaia: un indice spaziale lato server, per esempio PostGIS su PostgreSQL, che filtra per raggio e ordina per distanza in modo efficiente;
  • filtri combinati (servizi offerti, orari, categorie) applicati insieme alla distanza, non dopo.

Il campo di ricerca accetta città, CAP o indirizzo, con suggerimenti; il pulsante «vicino a me» chiede il permesso di geolocalizzazione solo quando l'utente lo preme.

Il rendering della mappa

Tile vettoriali e fornitore

Con MapLibre GL e tile vettoriali basate su dati OpenStreetMap si ottengono mappe veloci, personalizzabili nello stile e con costi prevedibili. Google Maps resta una scelta valida quando servono i suoi servizi (luoghi, percorsi) e l'aspetto familiare, ma va stimato il costo a consumo sul traffico reale.

Clustering

Mille segnaposto sovrapposti sono illeggibili e lenti. Il clustering raggruppa i punti vicini a seconda dello zoom; con librerie dedicate funziona fluido anche con decine di migliaia di punti.

Caricare solo quando serve

La libreria della mappa e le tile sono pesanti. Si caricano quando la mappa entra nella finestra o quando l'utente la attiva, mostrando prima un'anteprima statica. L'elenco delle sedi, invece, è HTML normale, subito disponibile, leggibile da tastiera e dai lettori di schermo: la mappa è un aiuto visivo, non l'unico accesso ai dati.

SEO locale: le pagine contano più della mappa

La mappa è generata da JavaScript e porta poco valore SEO. Quello che serve è una pagina indicizzabile per ogni sede: indirizzo, orari, contatti, servizi, foto, dati strutturati LocalBusiness (o il tipo più specifico), link dalla pagina elenco e dalle pagine di città. Nome, indirizzo e telefono devono essere coerenti con il profilo dell'attività su Google. Il dettaglio sui dati strutturati è in Dati strutturati: grafo di entità e generazione automatica.

Privacy e accessibilità

La posizione dell'utente non si conserva se non serve. Alcuni fornitori di mappe caricano risorse da server terzi: va valutato nell'informativa privacy e, dove serve, nel consenso. Sul fronte accessibilità: elenco alternativo alla mappa, controlli raggiungibili da tastiera, risultati annunciati dopo una ricerca.

Come lavoro a uno store locator

  1. Analisi dei dati: da dove arrivano le sedi, con quale frequenza cambiano, quali campi servono davvero (orari, servizi, contatti).
  2. Importazione e geocodifica: script ripetibile, con validazione e rapporto dei punti a bassa precisione.
  3. Ricerca: scelta tra calcolo nel browser e indice spaziale lato server in base al numero di punti e ai filtri.
  4. Pagine per sede con URL stabili, contenuti propri e dati strutturati.
  5. Mappa: fornitore, stile coerente con il sito, clustering, caricamento differito.
  6. Prove da telefono su rete lenta, da tastiera e con lettore di schermo.
  7. Aggiornamenti: sincronizzazione automatica dalla fonte, con avviso in caso di errori.

L'ordine non è casuale: dati e pagine prima, mappa dopo. Una mappa bellissima su dati sporchi mostra solo errori in modo più evidente.

Come la vedo io

Il progetto che ho in mente è Sagre Autentiche, un portale che ho sviluppato interamente lato programmazione WordPress: una mappa mostra le sagre intorno al visitatore, si cerca per luogo, periodo e prodotto, e il sito si collega tramite API ad altri servizi per tenere i dati aggiornati. Lì ho imparato che la mappa è la parte che si vede, ma il lavoro che conta è sotto: dati puliti, ricerca veloce e pagine che Google può leggere.

Per questo imposto sempre uno store locator partendo dai dati e dalle pagine, e aggiungo la mappa per ultima, caricata solo quando serve. Il risultato è più veloce, più accessibile e si trova meglio.

Un'ultima considerazione riguarda il fornitore della mappa. Preferisco soluzioni che non legano il progetto a un unico servizio: con MapLibre e tile basate su OpenStreetMap si può cambiare fornitore delle tile senza riscrivere il componente, e i costi restano prevedibili anche se il traffico cresce. Quando il cliente ha bisogno di funzioni specifiche di un fornitore commerciale, le uso volentieri, ma con un preventivo dei costi d'uso calcolato sul traffico reale e un limite di spesa configurato.

Perché affidarlo a me

Programmo dal 1999, ho consegnato più di 300 progetti e lavoro come sviluppatore esterno con circa 30 agenzie, da Roma e da remoto. Sviluppo store locator e mappe interattive con geocodifica in importazione, ricerca spaziale, clustering e pagine per sede ottimizzate per la SEO locale.

Se hai sedi, punti vendita o punti di interesse da mostrare, scrivimi: in una chiacchierata di circa 20 minuti capiamo da dove arrivano i dati e come mostrarli. Il servizio è in Mappe e geolocalizzazione.

Domande frequenti

Google Maps è familiare e ricco di servizi (luoghi, percorsi), ma ha costi a consumo oltre la soglia gratuita e condizioni d'uso vincolanti. MapLibre con tile basate su OpenStreetMap offre più controllo e costi più prevedibili, con qualche scelta tecnica in più. Si decide in base a traffico, funzioni richieste e budget.

Sì, se viene caricata subito su ogni pagina: le librerie e le tile pesano. Si carica solo quando entra nella finestra o quando l'utente la attiva, con un'anteprima statica al suo posto.

Non come primo passo. Meglio una ricerca per città o CAP e un pulsante «vicino a me» che chiede il permesso solo quando l'utente lo sceglie. Chiederlo al caricamento della pagina produce molti rifiuti.

La mappa da sola no, perché è contenuto generato da JavaScript. Aiutano le pagine indicizzabili per ogni sede, con indirizzo, orari, dati strutturati e collegamenti interni, coerenti con il profilo dell'attività su Google.

  • #store locator
  • #mappe interattive
  • #geolocalizzazione
  • #seo locale
  • #maplibre

Altri articoli

// Contatti

Un progetto, un problema o solo un dubbio?

Agenzia, attività o professionista: scegli come preferisci parlarmi. Rispondo entro un giorno lavorativo, senza impegno.