Dodanie mapy Google do witryny internetowej to jeden z najprostszych sposobów na zwiększenie użyteczności i atrakcyjności serwisu. Dzięki kilku krokom możesz wyświetlić dokładną lokalizację firmy, sklepu lub wydarzenia, co z pewnością ułatwi odwiedzającym dotarcie na miejsce. Poniższy poradnik przedstawia proces od rejestracji klucza API, przez integrację za pomocą iframe, aż po zaawansowane techniki z wykorzystaniem JavaScript.
Rejestracja klucza API i konfiguracja
Aby skorzystać z Google Maps w bardziej zaawansowany sposób, potrzebny jest klucz API. Umożliwia on kontrolę ruchu, zabezpieczenie i personalizację mapy. Proces rejestracji wygląda następująco:
- Zaloguj się do konsoli Google Cloud Platform (GCP) przez Google API Console.
- Utwórz nowy projekt lub wybierz istniejący.
- W sekcji APIs & Services odnajdź i włącz usługę Maps JavaScript API (oraz inne, np. Geocoding API, jeśli chcesz automatycznie pobierać koordynaty).
- Przejdź do zakładki Credentials i kliknij „Create credentials” → „API key”.
- Skonfiguruj ograniczenia klucza: możesz określić domeny odwołujące się do API, ograniczyć dostęp do konkretnych usług i wprowadzić limity wywołań.
Dzięki właściwemu zabezpieczeniu klucza API unikniesz nieautoryzowanego wykorzystania, co przełoży się na lepsze bezpieczeństwo i kontrolę kosztów.
Generowanie i wstawianie kodu iframe z Google Maps
Najłatwiejszym sposobem na dodanie mapy jest wykorzystanie kodu iframe. Wygenerujesz go w interfejsie Google Maps bez konieczności pisania skomplikowanego kodu:
- Otwórz Google Maps i wyszukaj interesującą lokalizację.
- Kliknij ikonę menu (trzy poziome kreski) i wybierz Udostępnij lub umieść mapę.
- Przełącz na zakładkę „Umieść mapę” i skopiuj wygenerowany fragment kodu
<iframe ...></iframe>. - W edytorze strony wklej kod w wybranym miejscu, np. w sekcji kontakt:
<iframe src="https://www.google.com/maps/embed?... " width="600" height="450" style="border:0;" allowfullscreen="" loading="lazy"></iframe>
Pamiętaj o dostosowaniu parametrów width i height oraz o nadaniu stylu, np.:
style="width:100%; height:400px; border:0;"
Dzięki temu mapa będzie responsywna i poprawnie dopasuje się do różnych rozdzielczości ekranów.
Zaawansowane opcje: API JavaScript
Jeżeli potrzebujesz większej kontroli nad wyświetlaniem map, wykorzystaj Maps JavaScript API. Pozwala ono na dynamiczne dodawanie znaczników, tras i interakcji z użytkownikiem.
Inicjalizacja mapy
W nagłówku strony lub przed zamknięciem <body> dodaj skrypt:
<script src="https://maps.googleapis.com/maps/api/js?key=TWÓJ_KLUCZ_API&callback=initMap" async defer></script>
Następnie w pliku JavaScript lub w tagu <script> umieść funkcję:
function initMap() {
const pozycja = { lat: 52.2297, lng: 21.0122 };
const mapa = new google.maps.Map(document.getElementById("map"), {
zoom: 14,
center: pozycja,
styles: [] // własne style mapy
});
const znacznik = new google.maps.Marker({
position: pozycja,
map: mapa,
title: "Tutaj jesteśmy!"
});
}
Upewnij się, że na stronie istnieje element z identyfikatorem map, np. <div id="map"></div>, oraz że ma nadaną wysokość w CSS.
Dodawanie wielu znaczników
Możesz przechowywać dane adresowe lub współrzędne w tablicy i w pętli tworzyć dla nich znaczniki:
const miejsca = [
{ name: "Biuro", coords: { lat: 52.230, lng: 21.015 } },
{ name: "Magazyn", coords: { lat: 52.225, lng: 21.010 } }
];
miejsca.forEach(item => {
new google.maps.Marker({
position: item.coords,
map: mapa,
title: item.name
});
});
Geokodowanie i trasy
Wykorzystując Geocoding API możesz dynamicznie przekształcać adres na współrzędne. Jeszcze dalej: z DirectionsService wyświetlisz trasę pomiędzy punktami.
- Stwórz instancje
new google.maps.Geocoder()inew google.maps.DirectionsService(). - Wywołaj metodę
geocode({ address: "Twoja ulica 10, Miasto" }, callback). - W callbacku odczytaj results[0].geometry.location i użyj jej do wyświetlenia znacznika lub do zbudowania trasy.
- Do rysowania trasy użyj
DirectionsRendereriroute()z określoną opcjątravelMode.
Optymalizacja i najlepsze praktyki
Integracja mapy Google wiąże się z pewnymi wyzwaniami dotyczącymi optymalizacji i wydajności:
- Lazy loading skryptów – stosuj atrybuty
asyncidefer, aby nie blokować ładowania głównego contentu. - Pobieraj tylko te moduły API, których naprawdę potrzebujesz (Geocoding, Places, Directions).
- Ograniczaj liczbę znaczników lub korzystaj z marker clustering, gdy punktów jest dużo.
- Definiuj style mapy, aby wyróżnić najważniejsze elementy i zmniejszyć ilość detali generowanych przez API.
- Dbaj o responsywność – ustaw w CSS wysokość kontenera w jednostkach procentowych lub vw/vh, a szerokość na 100%.
- Monitoruj zużycie klucza API w konsoli Google Cloud, aby uniknąć nagłych kosztów przy przekroczeniu limitów.
- W miarę potrzeb kontroluj dostęp do klucza, podając dopuszczalne referery (domeny), na których może być używany.
Tak przygotowana mapa nie tylko zwiększy funkcjonalność Twojego serwisu, ale także poprawi doświadczenie użytkowników i wpłynie pozytywnie na wizerunek marki.












