About this plugin
A simple, intuitive Google Map / OpenStreetMap plugin that installs as a Gutenberg block and a shortcode. Packed with useful features — geo-mashup of posts, KML overlays, marker icons, address geocoding — and fully free and open source. No subscriptions, no SaaS, no telemetry.
Slick Google Map lets you embed maps using either:
- Google Maps — requires your own API key (configurable per-site).
- Leaflet / OpenStreetMap — no key required, free tile service.
Features:
- Insert maps via the Slick Google Map Gutenberg block (with a multi-marker repeater) or the [slick_map] shortcode.
- Classic Editor users get a Slick Map media button above the editor that opens a dialog with the same repeater.
- Marker geo-mashup — aggregate every post/page that has lat / lng custom fields onto a single map.
- KML and GPX overlays — drop a track or boundary onto any map. KML works on both providers; GPX is Leaflet-only.
- Address geocoding — write address="Vienna, Austria" instead of coordinates. Geocoded once per address and cached for 30 days. Uses your Google Geocoding API key if set, falls back to Nominatim/OSM otherwise.
- Coordinate formats — accepts decimal ( 48.2082 ) and DMS ( 48°12'29.5"N ) in any marker.
- Marker icons — bundled set of 13 modern SVG pins (default, restaurant, lodging, cafe, bar, museum, airport, rail, shop, camera, mountain, castle, religious), plus your own URL. Legacy filenames from the 2014-era plugin are auto-aliased.
- Map controls — toggle the zoom / map-type / street-view / scroll-wheel / drag controls per map.
- Layers — Google bicycling and traffic overlays on demand.
- 45° aerial tilt — passed through to Google as tilt: 45. Only takes visible effect on vector Map IDs, or on satellite/hybrid view over the specific cities where Google has 45° aerial imagery. No effect on raster maps or on Leaflet.
- Custom Google styles JSON — for branded maps without cloud-styled Map IDs.
- Wiki-style links in marker titles: [[https://example.com|Display text]] becomes a real link.
- Compatible with WordPress page caches — no per-visitor state in the rendered HTML, no AJAX side-effects.
- No fixed-cost dependencies — Leaflet / OSM is free; Google Maps is pay-as-you-go with a generous monthly free tier (≈28k map loads/month at no charge).
History:
3, which was itself a fork of the Comprehensive Google Map Plugin by Alexander Zagniotov (2011–2014). 1+ — see the “Parity & rewrite” section below for what changed.
Insert a map via the Slick Google Map Gutenberg block, the Slick Map media button in the Classic Editor, or the [slick_map] shortcode. Optionally aggregate posts/pages that have lat / lng custom fields onto a single map (“geo-mashup”), and overlay a KML or GPX file.
Shortcode
3738" zoom="13" height="400px" provider="leaflet"]
Geo-mashup of posts and pages:
[slick_map mashup="post,page"]
KML or GPX overlay:
gpx"]
KML works with both providers; GPX requires the Leaflet provider (Google’s Maps JS API does not natively render GPX).
Markers with addresses and custom icons (nested [marker] children):
png"] [/slick_map]
Each [marker] accepts address (geocoded once and cached) or explicit lat / lng, plus optional title and icon.
The icon attribute accepts either an https://… URL pointing to your own image, or one of the bundled short names: default, restaurant, lodging, cafe, bar, museum, airport, rail, shop, camera, mountain, castle, religious. png, …) are auto-aliased to the nearest modern equivalent.
For geo-mashup markers, set a marker_icon custom field on each post to override the default pin for just that post.
Map controls and layers
Toggle Google’s built-in UI: zoomcontrol, maptypecontrol, streetviewcontrol, scrollwheel, draggable (all default true ).
Google-only overlays: showbike="true", showtraffic="true".
45° aerial tilt: tilt="45". Only takes visible effect on a Google vector Map ID, or in satellite/hybrid view over cities where Google has 45° imagery. Ignored elsewhere.
Custom Google map styles JSON: styles='[{"featureType":"poi","stylers":[{"visibility":"off"}]}]' (ignored when a Map ID is configured — cloud styling takes precedence).
DMS coordinates
5"N ).
Wiki-style links
com|Display text]] to embed real links, or [[Plain Page]] for unlinked highlighted text.
Geocoding
When a Google Maps API key is configured the plugin uses the Google Geocoding API (same Cloud project as Maps; enable Geocoding API alongside Maps JavaScript). Otherwise it falls back to Nominatim/OpenStreetMap. Results are cached in a 30-day transient per address, so each unique address is geocoded at most once.
Privacy
com. com. Choose the provider that matches your site’s privacy posture.
Parity & rewrite
0 is a complete rewrite of the 2015 codebase. 6 and PHP 5, used the long-retired Google JSAPI loader, geocoded addresses on every page view, shipped 300+ marker PNGs of mixed provenance, and had several unauthenticated AJAX write paths in wp-admin. Re-issuing it as-is on a modern stack was not viable, so the codebase was rewritten from scratch around the same shortcode vocabulary.
What you keep. ] shortcode still render. The plugin registers google-map-v3 as a back-compatibility alias that maps the still-useful attributes ( width, height, zoom, kml, maptype, addmarkermashup, addmarkerlist, maptypecontrol, zoomcontrol, streetviewcontrol, scrollwheel, draggable, showbike, showtraffic, tiltfourtyfive, styles ) onto the new renderer.
png, …) are aliased to the bundled modern SVG set.
What’s gone for good. Some features can’t come back because the upstream services or APIs disappeared:
- panoramio — Google shut Panoramio down in November 2016.
- pancontrol — Google removed panControl from the Maps API in 2017; there is no flag to set anymore.
- google.maps.KmlLayer — deprecated April 2026; replaced internally with a fetch + KML → GeoJSON renderer.
- The old https://www.google.com/jsapi loader — retired by Google in 2017; the modern loader requires a user-supplied API key.
What’s not yet back. Marker clustering, directions/routing, geolocation marker, and marker drop/bounce animations are reachable from the rewrite but not yet wired up. md on GitHub for the full, categorised list (restored / new / missing-but-doable / deprecated-by-upstream / deliberately-dropped) plus a migration cheat-sheet.
What was dropped on purpose. md for the rationale on each.
Contributors
Current maintainer
- Norbert Preining
Original author of the upstream “Comprehensive Google Map Plugin” (2011–2014)
- Alexander Zagniotov — thanks for the original work, released under GPL.
Additional contributors
- Honza Rameš