Geolocation Field provides a field type to store geographical locations as pairs of latitude and longitude (lan,lng) as well as the necessary integration to display those locations through views, fields and using a number of different map providers.

Demo on simplytest.me

Drupal 8/9/+

Drupal Integration

- Geolocation Field, Widgets & Formatters
- Views
- Search API Location integration in Views
- Geofield support for Views & Formatter
- Blocks
- Address support for Widgets & Views
- Integrated Demo modules
- GPX-file Field Widget & Formatter

(optional) Geometry Support

- Native in-DB Spatial Geometry support (requires MySQL 5.7+ / PostgreSQL)
- Geometry, Multi-/Polygon, Multi-/Linestring, Multi-/Point fields
- WKT / GeoJSON Fields & Widgets
- Views support for Within/Contains/Intersects
- Countries of the world geometries submodule
- US States geometries submodule
- German Postal Codes geometries submodule
- UNESCO World Heritage Sites points submodule

Map Providers

- Google Maps
- Google Static Maps
- Leaflet / OSM
- Yandex.Maps
- HERE Maps
- Baidu Maps

Google Maps features

- ClientLocationIndicator
- ContextPopup
- ControlCustomGeocoder
- ControlCustomLocate
- ControlCustomRecenter
- ControlGoogleMapType
- ControlGoogleStreetView
- ControlGoogleZoom
- Drawing
- Directions
- MapDisablePOI
- MapTilt
- MapTypeStyle
- MarkerClusterer
- MarkerIcon
- MarkerInfoBubble
- MarkerInfoWindow
- MarkerZoomByAnchor
- Spiderfying

Leaflet features

- ClientLocationIndicator
- ControlFullscreen
- ControlGeocoder
- ControlLayer
- ControlLocate
- ControlRecenter
- ControlScale
- ControlZoom
- CustomTileLayer
- GestureHandling
- MarkerClusterer
- MarkerIcon
- MarkerPopup
- TileLayer
- WMS

Yandex features

- Balloon
- Clusterer
- ControlGeolocation
- ControlSearch
- ControlTraffic
- ControlType
- ControlZoom

Theming / custom elements

- Render elements for map and locations
- Form element

Plugin support / Customization

- DataProvider to get geodata from different sources
- Geocoder to use different source for locations
- GeocoderCountryFormatting to display geocoded data correctly as needed
- MapCenter to customize different ways on where and how to center a map
- MapFeature to add functionality to maps
- MapProvider

Drupal 7

  • Plain text (input & output)
  • Google Maps (input & output)
  • Geolocation HTML5 (input & output)
  • Geolocation Proximity for proximity/distance based view results.
  • 7.x-1.x-dev Google Maps Geocoder (backport of Drupal 8 version)
  • 7.x-1.x-dev Template based microdata formatter (backport of Drupal 8 version)

Technical background (Drupal 7/Drupal 8)

At the moment Geolocation stores the following values in the database:

  • lat (latitude),
  • lng (longitude),
  • lat_sin (precalculated latitude sine),
  • lat_cos (precalculated latitude cosine),
  • lng_rad (precalculated radian longitude).

The precalculated values will speed up proximity SQL look ups.

Project information

Releases

4.0.0 Stable release covered by the Drupal Security Team released 21 June 2026
Works with Drupal: ^10 || ^11 || ^12
Install:

Development version: 4.x-dev updated 3 Jul 2026 at 06:45 UTC

8.x-3.15 Stable release covered by the Drupal Security Team released 21 June 2026
Works with Drupal: ^10.3 || ^11
Install:

Development version: 8.x-3.x-dev updated 21 Jun 2026 at 17:14 UTC