Filter WordPress posts by distance from a location, and optionally specify a maximum distance.
This plugin implements simplistic functionality to WordPress posts by enabling archives to be sorted via distances from a specified location when certain URL parameters are detected. You are able to show how far the post's distance is, and restrict results by a certain radius.
Activate the plugin in the Plugins menu. An option should appear under Settings.
On the options page you'll have a few settings that you can change to make the plugin work to your liking.
- You can disable all location functionality by disabling it
- You can change the unit of measurement
- You can change the URL parameters
- You can change the name of various
meta_keys
that the plugin uses when calculating the distance for each post
To make a post able to be filtered, you must specify the location using a custom field. Enable this at the top of the page.
Then enter the name of your location meta_key
and specify the value you want it to show. After updating the post, two more custom fields should appear - the lat and lng keys if done correctly.
For any archive page, if the URL location parameter is specified, it will order by distance. You can limit the number of results using the URL radius parameter.
You can show distance information using the_distance();
and get_the_distance();
within the WordPress loop.
if (have_posts()) : while (have_posts()) : the_post();
the_title();
the_content();
the_distance();
endwhile; endif;
And that's it!