Geotag posts and display map with geotags in WordPress
The WordPress OSM Plugin supports geotagging for posts and pages.
- Install WP OSM Plugin
- Activate Options to see geotag and shortcode are at add post page
- Geotag your posts /pages
You can define if you want to see geotags of posts, pages or any:
[*osm_map_v3 map_center="52.795,23.51" zoom="3" width="75%" height="300" tagged_type="post" marker_name="mic_blue_pinother_02.png" type="stamen_watercolor"]
* <= remove asteriks
You can also cluster your tagged posts/pages:
[*osm_map_v3 map_center="52.795,23.51" zoom="3" width="75%" height="300" tagged_type="post" marker_name="mic_black_pinother_02.png" tagged_param="cluster" tagged_color="black" type="stamen_watercolor"]
* <= remove asteriks
And you can filter it for categories like “tutorial”:
[*osm_map_v3 map_center="52.795,23.51" zoom="3" width="75%" height="300" tagged_type="post" marker_name="wpttemp-yellow.png" tagged_filter="tutorial"]
And here is how to filter with tags:
[*osm_map_v3 map_center="52.795,23.51" zoom="3" width="100%" height="450" tagged_type="post" marker_name="mic_red_pinother_02.png" type="OpenTopoMap" tagged_filter="Release" map_border="thin solid red" tagged_color="red" tagged_filter_type="post_tag"]
There is also a widget to display a map with the geolocation at the post / page automatically. Just go to:
Deisgn => Widget to add and configure the widget:

You can see the widget with the map on this site.
You can also add autogenerated map to your WP-theme you this coding:
// echos a links to OpenStreetMap with post/page geo data.
OSM_echoOpenStreetMapUrl()
// returns a links to OpenStreetMap with post/page geo data.
OSM_getOpenStreetMapUrl()
// returns the Long value of post/page geo data
OSM_getCoordinateLong()
// returns the Lat value of post/page geo data
OSM_getCoordinateLat()
- - - Sample to add link to OSM with geo data in my template - - -
Add these lines in the emplate file to create a link with geo data of your post.
<?php $NameOfPlace = get_the_title();?>
<?php if (function_exists(OSM_echoOpenStreetMapUrl)) { ?>
<?php if ((OSM_getCoordinateLong('osm'))&&(OSM_getCoordinateLat('osm'))) { ?>
<?php _e(" - Map:"); ?>
<?php echo "<a title='".$NameOfPlace."' target='_blank' href='".OSM_getOpenStreetMapUrl()."'> OSM</a >";?>
<?php }?>
<?php }?>