Cartograph adds two map field types to Craft: Map Point for single locations and Map GeoJSON for routes, regions, and feature collections. Tiles come from OpenFreeMap and rendering uses MapLibre GL JS, so there are no API keys to manage and no per-request fees.
In the Control Panel, editors get an interactive map with search, zoom, and click-to-place editing. In templates, a single Twig include renders the field:
{% include 'cartograph/map' with {
geojson: craft.cartograph.pointFeature(entry.venueMap),
} %}
Three embed presets (default, compact, hero) cover most layouts, and mergeMapPoints lets you plot many entries on a single map.
Proximity queries are built in. Filter and sort element queries by distance from any anchor point:
{% set nearby = craft.cartograph.near(
craft.entries.section('venues'), 'venueMap', [47.3769, 8.5417], 5, { orderByDistance: true }) %}
The same filter is available over GraphQL ({ lat, lng, radius, orderByDistance }), with map values returned as typed GeoJSON strings for headless front-ends.
MapLibre loads from jsDelivr with SRI by default, or can be self-hosted via a single plugin setting.
Requires Craft 5.x, PHP 8.2+, and MySQL 8.0.17+ / MariaDB / PostgreSQL 13+.
Standard
Plus $9/year after one year.
To install this plugin, copy the command above to your terminal.
This plugin doesn't have any reviews.