back to top

Integrare Google Maps nel codice HTML di una pagina web

In questo articolo vedremo come inserire una mappa personalizzata allโ€™interno del nostro sito. Piรน precisamente vedremo come integrare una mappa di Google allโ€™interno del codice HTML di una comune pagina web.

I siti web che necessitano dellโ€™integrazione di una mappa personalizzata sono oggigiorno tantissimi: basti pensare al sito di una qualsiasi azienda o attivitร  locale per capire immediatamente qualโ€™รจ la portata di questo tipo di servizio e quanto puรฒ essere importante essere in grado di integrare, correttamente, una mappa dinamica allโ€™interno di un sito web.

Pubblicitร 

Come giร  detto, per raggiungere il nostro scopo, usufruiremo del servizio Google Maps che, oltre ad essere il piรน conosciuto ed utilizzato sistema di questo tipo, offre un metodo facile ed immediato per effettuare lโ€™operazione di incorporazione di una mappa allโ€™interno di una qualsiavoglia pagina web.

Ottenere la mappa

Per prima cosa, quindi, rechiamoci sul sito Google Maps allโ€™indirizzo maps.google.it ed effettuiamo la ricerca di nostro interesse. Ai fini del nostro esempio andremo a localizzare sulla mappa un ipotetico negozio situato in piazza Duomo n.1 a Milano.

selezioniamo un luogo sulla mappa

Una volta identificato il lugo di nostro interesse non dovremo fare altro che cliccare sul pulsante "Condividi"

clicchiamo sul pulsante Condividi

nella finestra a comparsa, selezionare la voce Incorpora Mappa:

selezioniamo l'etichetta Incorpora Mappa

Il codice che ci viene fornito รจ quello di un comune <iframe" che possiamo personalizzare nelle dimensioni agendo sul pulsante di selezione situato sulla nostra sinistra: cosรฌ facendo ci verranno mostrate diverse opzioni relativamente alla dimensione della mappa (piccola, media, grande oppure dimensione personalizzata). Cliccando sullโ€™opzione "Dimensione personalizzata" potremo impostare a piacimento le dimensioni (in pixel) della mappa che andremo ad integrare sul nostro sito web.

Personalizziamo le dimensioni della mappa da incorporare nel sito

Integrare la mappa nella pagina web

Una volta ottenuto il codice HTML della mappa non dovremo fare altro che copiarlo ed incollarlo nel punto della nostra pagina web in cui desideriamo appaia la cartina dinamica.

Solitamente la mappa viene integrata in pagine ad hoc del sito come, ad esempio, la pagina "Contatti" o la pagina "Dove siamo". Apriamo, quindi, la pagina web in cui desideriamo integrare la mappa di Google utilizzando il nostro editor HTML preferito (oppure con un semplice editor di testo come Notepad++ o il Blocco Note di Windows) e incolliamo il codice nel punto in cui vogliamo compaia la mappa.

Trattandosi di un iframe รจ opportuno verificare attentamente che le dimensioni impostate per la mappa siano compatibili con gli ingombri previsti in fase di web-design della pagina: se, ad esempio, abbiamo previsto che lโ€™elemento contenitore della mappa (un DIV o la cella di una tabella) abbia una larghezza di 500 pixel, dovremo accertarci che lโ€™iframe di Google non ecceda questa dimensione, in caso contrario il risultato โ€“ da un punto di vista grafico โ€“ potrebbe essere tuttโ€™altro che impeccabile.

Google mapsโ€ฆ Responsive!

Un grosso limite dellโ€™utilizzo del tag <iframe> consiste nella rigiditร  delle sue dimensioni, cosa che rende questo markup nativamente poco adatto a siti web dalle dimensioni fluide come, ad esempio, i siti realizzati con la tecnica del responsive design.

Al fine di integrare le mappe di Google allโ€™interno di un sito responsive si puรฒ optare per il ricorso alle Google Maps API (o a diversi script su queste basati), tuttavia questa scelta รจ sconsigliata per chi รจ alle prime armi e non ha basi di programmazione nellโ€™ambito del web publishing.

Il ricorso allโ€™iframe, anche in questo contesto, resta pertanto la scelta migliore dal punto di vista della semplicitร  e dellโ€™immediatezza. Vediamo quindi, grazie ad un piccolo trucco, come adattare lโ€™iframe di Google Maps ad un layout fluido (privo cioรจ di dimensioni fisse e preimpostate).

Vediamo di seguito il markup HTML da utilizzare in fase di integrazione della nostra mappa personalizzata:

<div class="google-maps">
  <iframe src="https://www.google.com/maps/embed?........." frameborder="0" style="border:0" allowfullscreen></iframe>
</div>

Come potete vedere, abbiamo incapsulato lโ€™iframe copiato sul sito Google Maps allโ€™interno di un DIV cui abbiamo assegnato la classe "google-maps". Abbiamo altresรฌ rimosso gli attributi width e height dal tag iframe in quanto incompatibili col tipo di layout del nostro sito.

A questo punto non ci resta che integrare questo codice CSS allโ€™interno del nostro foglio di stile:

.google-maps {
  position: relative;
  padding-bottom: 75%; /* Definisco l'aspect ratio */
  height: 0;
  overflow: hidden;
}
.google-maps > iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}

A questo punto il tag iframe della mappa si adatterร  automaticamente allo spazio disponibile mantenendo sempre un rapporto 4:3 tra larghezza e altezza cosรฌ come definito attraverso lโ€™uso del padding-bottom.

Utilizzare GMap.js

GMaps.js รจ una soluzione semplice, libera (rilasciata sotto licenza Open Source) e gratuita per interagire in modo rapido e semplice con la API (Application Programming Interface) messe a disposizione da Mountain View per lโ€™interazione con le proprie mappe.

Si tratta di una libreria realizzata in JavaScript che viene fornita come estensione del noto framework Ajax jQuery.

Utilizzare GMaps.js รจ estremamente semplice: per prima cosa รจ necessario includere nella pagina la libreria jQuery, il Javascript relativo alle API di Google Maps e il file della libreria, in questo modo:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script> 
<script type="text/javascript" src="http://maps.google.com/maps/api/js?key=TUA_CHIAVE_API&callback=initMap"></script> 
<script type="text/javascript" src="gmaps.js"></script>

Fatto questo lโ€™utilizzatore dovrร  definire lโ€™ID del container e le coordinate di longitudine e latitudine della mappa che si desidera visualizzare, come nellโ€™esempio seguente:

new GMaps({
div: '#map',
lat: -12.043333,
lng: -77.028333
});

Lo sviluppatore avrร  inoltre la possibilitร  di definire i parametri relativi allo zoom (che come impostazione predefinita รจ "15"), alla larghezza e allโ€™altezza, inoltre, รจ bene tenere conto del fatto che le dimensioni stabilite allโ€™interno di un foglio di stile consentiranno lโ€™override dei valori contenuti nel selettore.

Per arricchire le mappe incluse sarร  infine possibile aggiungere eventuali markers, rilavare il posizionamento di un utente tramite le funzionalitร  per la geolocalizzazione di HTML5, definire specifici percorsi e impostare eventi personalizzati.

Conclusioni

Lโ€™utilizzo delle Google Maps allโ€™interno di un sito web รจ una prassi estremamente diffusa ed offre risultati soddisfacenti in ogni contesto ed ambito di utilizzo. Anche senza ricorrere alle API, infatti, รจ possibile ottenere risultati impeccabili per le esigenze piรน comuni.

Altri contenuti interessanti

Pubblicitร 

Potrebbero interessarti queste guide

Massimiliano Bossi
Massimiliano Bossi
Stregato dalla rete sin dai tempi delle BBS e dei modem a 2.400 baud, ho avuto la fortuna di poter trasformare la mia passione in un lavoro (nonostante una Laurea in Giurisprudenza). Adoro scrivere codice e mi occupo quotidianamente di comunicazione, design e nuovi media digitali. Orgogliosamente "nerd" sono il fondatore di MRW.it (per il quale ho scritto centinaia di articoli) e di una nota Web-Agency (dove seguo in prima persona progetti digitali per numerosi clienti sia in Italia che all'estero).

Leggi anche...

Video Background HTML e CSS: consigli, caratteristiche tecniche e best practices

Utilizzare un video come sfondo (noto anche come video background)...

Visualizzare il codice sorgente HTML di una pagina web su iPhone e iPad

Molti sviluppatori si trovano in difficoltร  quando hanno bisogno...

Caratteri speciali negli URL: quali sono e come gestirli

Gli URL (Uniform Resource Locator) sono componenti fondamentali del...

Stilizzare HR (linee orizzontali) in puro CSS

Il tag <hr> (Horizontal Rule) รจ un elemento HTML...

Convertire PSD in HTML/CSS: ecco come fare

Avete deciso di creare un sito web ma non...
Pubblicitร