Working on a WMS Mapping Module for WordPress


3 min read

I got to spend some time the past couple weeks digging into Wordpress’s geo capabilities. Many Wordpress sites have been geotagging content for years, and they’ve already been inventing ways to display that existing information on Google and Yahoo maps. The only thing missing was a module that lets users put their content on new, custom maps that can be more attractive and flexibly licensed using something very close to the “Nice Map module for Drupal”:

A little background regarding Wordpress and geotagging is helpful to see this need in perspective to the other great geo work done already. Much like the state of geo-modules in Drupal, Wordpress has had quite a few approaches to similar problems. It appears that Wordpress 1.2 included functionality for geotagging posts, which was removed from the distribution when 2.0 added stable plugin support. At that point the plugin “Geo”: was developed, but development faded quickly — the plugin hasn’t been updated since 2005. Then a trio of new geotagging plugins was created. “Geo-mashup”: was the first, and has been consistently updated for three years. Next came “WP Geo”:, which also focuses on tagging blog posts and outputting Google Maps API maps. “GeoPress”: is the newest entry and a very interesting pick — instead of interfacing directly with Google Maps, it uses “Mapstraction”: to generate Google, Yahoo, or Microsoft maps with a quick configuration change.

There is a great opening for a WMS client like we did for Drupal, and with some time over the holiday I started coding a Nice Map module for Wordpress. The module is currently a bit different than Nice Map for Drupal and any of the other Wordpress plugins. Instead of providing a backend interface for adding locations to posts, it uses data already saved by WP Geo or Geo-mashup (and soon, GeoPress). It should be a drop-in replacement for people who have been using Google Maps for years and want more control over their maps. The plugin also doesn’t introduce more new code in its WMS client. We’ve made the great WMS client in Nice Map into a module that works anywhere PHP 5 works. If you’d like to create a WMS client for your favorite CMS, it’ll soon be a lot easier when there’s a simple PHP API to hook into.

We have a few more ideas about the future of mapping plugins for Drupal and Wordpress. A solution like “Mapstraction”: seems to be a step in the right direction, making draggable maps vendor-neutral and giving people the option of using the great, Creative-Commons-licensed “OpenStreetMap”: on their site. Ideally the same data in Wordpress or Drupal can be piped into different plugins and seamlessly generate maps from Google Maps, OpenStreetMaps, or free WMS maps, giving users great style and functionality options for their geotagged data.

Back to work on the module — I hope to have something out by the end of the week and another post with details. Excited for feedback.

What we're doing.