Spotmap
Spotmap turns your WordPress site into a self-hosted GPS tracking platform. Connect your devices, and Spotmap stores every position in your own database — no third-party cloud required. Supported devices (data feeds) SPOT (FindMeSPOT) — automatic feed polling via XML API Garmin inReach — receives positions via Garmin’s MapShare feed OsmAnd — receives positions via HTTP from the OsmAnd smartphone app Teltonika — direct integration for Teltonika GPS routers and trackers WordPress Media Library — photos with GPS EXIF data can appear on the map Post Locations — assign GPS coordinates to any WordPresspost or page via the block editor sidebar. Posts appear on the map as clickable markers that link directly to the article so readers can jump from the map to the full story. Zoleo — if you have a Zoleo device please reach out to the plugin author Map & visualization Interactive Leaflet map with full Gutenberg block support — type /spotmap in the editor Wide range of tile providers: OpenStreetMap, Mapbox, Thunderforest, LINZ (NZ), IGN France, UK Ordnance Survey, USGS, OpenSeaMap, ESRI Ocean, and any custom XYZ tile URL GPX track overlay via the built-in GPX manager — upload and manage GPX files for planned routes, waypoints, and recorded tracks Photo EXIF GPS display — images from your media library with location data appear on the map Configurable line breaks when no positions arrive within a set time interval Multiple feeds and devices on a single map, each with its own color Post location markers — each marker shows the post title and links to the article, turning any map block into a navigable index of location-tagged content Configurable marker styles and icons Filtering & interaction Rich time filtering including relative ranges like “last 24 hours” or “last 7 days”, and absolute date ranges Interactive data table linked to the map — click a check-in to zoom to that position Initial map state options: show all points, zoom to last position, or zoom to last trip Auto-refresh without full page reload Data management Long-term position storage — your data stays in your WordPress database for as long as you want Convert tracked positions to GPX export Manage, move, and delete points from the WordPress dashboard Upload and organize GPX files through the GPX manager Performance Rewritten map engine in TypeScript for better reliability Significantly faster rendering with large numbers of points compared to 0.11.x Why Spotmap? Most GPS tracking solutions lock your data into a vendor cloud. SPOT’s own platform doesn’t even offer free long-term storage. Spotmap keeps everything on your server — whether you’re documenting a sailing trip, sharing a bike tour with friends and family, or tracking vehicles. Your data, your rules. Security Message content and phone numbers SPOT devices can include a phone number or personal message in their transmission data. This information is stored in the database and may appear in marker popups on your map. To overwrite this content, use the Marker section in Settings > Spotmap. Setting a feed password in your SPOT account (and entering it in the plugin settings) ensures that the message content is not stored in the WordPress database and thus not accessible by the public. Live location privacy The plugin offers a cosmetic filter to hide points newer than a configurable threshold (e.g. 30 minutes, 2 hours, or 1 day). This prevents the most recent positions from appearing on the public map. Important: this filter is display-only. The REST API endpoint exposed by the plugin can return all points stored in the database, regardless of the block filter setting. There is currently no way to fully hide the latest positions from a technically capable visitor. If hiding live locations from the API is a requirement, you should restrict access to the REST API endpoint at the server or WordPress level. Map tokens API tokens for tile layer providers (Mapbox, Thunderforest, LINZ, IGN France, OS UK, etc.) are stored in WordPress settings and embedded in the page HTML at render time. Any visitor who views the page source can read your token. To reduce the risk of token abuse, restrict each token to your domain using the provider’s referrer/HTTP origin restrictions (e.g. https://yoursite.com/*). Shortcodes If you use a legacy text editor and require shortcodes, you are able to use the shortcode builder from the settings page of Spotmap. there you can interactively create the shortcode you need. The following shortcodes are supported: [spotmap] — embeds an interactive map [spotmessages] — embeds a table of SPOT messages and check-ins For the full attribute reference, see README-SHORTCODE.md on GitHub.
Top keywords
- map15×1.99%
- data9×1.19%
- spotmap8×1.06%
- wordpress7×0.93%
- gps6×0.80%
- gpx6×0.80%
- positions6×0.80%
- api5×0.66%
- database5×0.66%
- page5×0.66%
- points5×0.66%
- spot5×0.66%
Waymark
❤️ Keep This Project Alive Through Sponsorship ❤️ Creating Maps Use the intuitive Editor to create Maps with one, or thousands of interactive Overlays. Overlays – Create Markers, Lines and Shapes with a: Title Image (Media Library or link to external image) Description (Rich text editor, HTML supported) Type (defined in Settings) Import GPX KML GeoJSON EXIF (Image location metadata) Elevation data (adds an interactive profile chart for Lines with elevation data) Meta – Add extra information to your Maps; these are customisable form inputs that allow you to add additional content to your Maps. Types – Set options to visually distinguish between Overlays (colours/icons etc.), then select it when using the Editor. Collections – Group Maps together and display multiple Maps at once. Create complex Collection hierarchies to suit your needs and associate Maps with multiple Collections. Submissions – Allow registered users, or guests to create Maps from the front-end of your site. You can control who can Submit Maps, what editor features are available and whether submissions should be approved before they are published. 🌟 GitHub 👐 WordPress 📖 Demo & Docs Displaying Maps Embed your Maps using the [Waymark] Shortcode, or link to the Map Details page. Shortcodes Display a single Map, or a Collection of Maps anywhere that Shortcodes are supported. An optional Shortcode Header displays the Map/Collection title, a link to the Map Details page and any Meta. Display a Marker defined through the Shortcode. Display a Basemap only, without any Overlays by providing centre and zoom parameters. Basemaps – Uses OpenStreetMap by default, with support for multiple raster tiled/”slippy” Basemaps. You can switch Basemaps using the Overlay Filter. Overlay Filter – Allow the user to filter which Overlays are currently visible on the Map. Export (Optionally) Let anyone Export Maps into GPX, KML and GeoJSON formats through the Shortcode Header or on the Map Details page. Works on mobile devices. Customising Built to be flexible, Waymark has lots of Settings and Types provide one place to control how Overlays (Markers/Lines/Shapes) are displayed. Marker Icons can be provided as: – Font Icons (Ionic Icons v2/Font Awesome v4) – Simple Text, or Emojis (i.e. 🏕️, 🚩, 📸). – Custom HTML (good ol’ , or a more complex structure). So you can pretty much create any kind of Icon you want. For developers: Most elements can be styled using CSS and have sensibly named waymark- classes. WordPress integration: Maps are stored using the custom post type waymark_map. Collections use the waymark_collection Taxonomy. Embed Maps using the [Waymark] Shortcode anywhere they are supported, or dynamically using the do_shortcode(["Waymark"]) function. Geographical data is stored in GeoJSON format. Types are specified using the type Property, i.e. {feature: { geometry: { type: 'Point', coordinates: [0, 0] } }, properties: { type: 'Alert', title: 'Bridge Removed!' }. Specify which GeoJSON feature properties to store when importing (Settings > Overlays > Properties). These can be automatically appended to the Overlay Description, or accessed programatically via the layer.feature.properties Object. Maps are displayed using the Leaflet JavaScript library, which is bundled with Waymark and can be extended using the waymark_loaded_callback [callback function](https://www.ogis.org/waymark-wp/advanced/using-the-global-callback-function/. Be sure to check out Map First, a minimal WordPress theme with an obsession for Maps (it’s open-source too and contains lots of comments about customisations). Waymark is free, open-source (GPL v2) and a labour of Love. I try to keep the plugin well supported, so please feel free to reach out with any issues, questions or feedback. Development [!NOTE] To develop locally you will need to have both Node.js and NPM installed. Grunt is used to run the build script, which compiles the JavaScript and CSS and performs some other tasks. # Clone the repository (and the Waymark JS submodule) git clone --recurse-submodules https://github.com/opengis/waymark.git # Navigate to the Waymark directory cd waymark # Install the dependencies (or pnpm/yarn install) npm install # Run the build script grunt The build script will watch for changes to the JavaScript and CSS files. Pull requests are welcome! [!IMPORTANT] Waymark JS is responsible for the Viewer and Editor and is included as a Git submodule (/waymark-js directory). View on GitHub. Dev Server A local WordPress environment is provided via wp-env. Docker must be running. npm run dev This starts WordPress at http://localhost:8888 and prints the credentials summary: ──────────────────────────────────── MySQL 127.0.0.1 root / password Admin http://localhost:8888/wp-admin admin / password ────────────────────────────────────