Spatial DB & API
Last updated
Was this helpful?
Last updated
Was this helpful?
In Pro, you can really superpower your Wordpress site and turn it into a proper spatial backend for other apps, external users, or other types of spatial queries. The database Wordpress uses, MySQL, does contain quite a bit of spatial functionality -- not as much as PostGIS and PostgreSQL, but enough for most usage for most spatial projects.
To create a spatial table in your Mapster WP Maps installation, make sure you have Pro installed, and go to Maps > Settings. Click on the Advanced Options tab and scroll down to the Spatial API option. Once this is enabled, on the next page load your spatial database will be created and populated with all the features that currently exist in your installation.
The mapster_maps_geometry
table contains just three columns: an identifying ID, a post_id corresponding to the post, and a coordinates column containing the geometry for that post. The geometry column will be used for spatial queries and space is minimized by not storing any additional information.
As long as the Spatial API option is enabled, the database will continue to be updated as you create new geometries and update existing geometries.
This is a feature that can help you connect your Wordpress site to other applications, external users, or other management platforms. Mapster has built in a query
endpoint that can receive a variety of queries and perform these queries on your spatial database.
Responses will return as a full GeoJSON, with found posts as GeoJSON features.
The endpoint for your queryable endpoint will be
This is a POST endpoint. Available query parameters include:
category
integer
ID for a Mapster WP Maps category
query_type
string
pip
for Point-in-Polygon, polygon-overlap
for Polygon Overlap
query_feature
geoJSON feature object
Point or Polygon depending on the query
bounds_only
boolean
Output the whole feature (false
) or only the feature bounds (true
)
custom_fields
array of strings
An array of the names of Advanced Custom Fields you want to include as feature properties
The following query performs a point-in-polygon query on category 8, returning the full feature geoJSONs along with feature properties school_name
and activities
.
Query
Response
This will check for intersecting polygons in category 8, and return the full feature geoJSON.
SQL has a number of spatial queries you can do if you're into writing your own SQL queries. You can find a list of them at the . Your spatial data is stored as geometries in the coordinates column.