WP Manifestindependent plugin directory
manifest / content / wp-places-map

WP Places Map releasesself-updates

Interactive Google Map plugin for WordPress — custom post type, CSV import, clustering, type filters, GitHub auto-update.

by Aleš Pokora · github.com/ales-pokora/wp-places-map · website

0stars
25release downloads
0forks

Install

The author publishes release zips, so WP-CLI can install straight from GitHub:

wp plugin install https://github.com/ales-pokora/wp-places-map/releases/download/v1.0.23/wp-places-map.zip

Ships its own WordPress updater (built-in updater), so new versions show up under Dashboard → Updates.

Interactive Google Map of locations (clinics, hospitals, branches, offices, points of sale — anything) as a self-contained WordPress plugin.

  • Custom post type Place + admin meta box (address, GPS, contact, hours).
  • CSV bulk import with Google Geocoding fallback for rows missing coordinates.
  • [wp_places_map] shortcode — drop into Divi, Gutenberg, classic editor or theme template.
  • Custom-styled markers, marker clustering, type filters, info window with contact details and one-tap "Navigate".
  • Public read-only REST API at /wp-json/wp-places-map/v1/facilities.
  • GitHub auto-update — WP Admin → Plugins shows update notification, one-click install. No third-party update plugin required.
  • Fully localised in Czech.

Install

  1. Download the latest wp-places-map.zip from Releases.
  2. WP Admin → Plugins → Add New → Upload Plugin → choose the ZIP → activate.
  3. Settings → Places Map → paste a Google Maps API key (Maps JavaScript API + Geocoding API enabled).
  4. Add places one-by-one or via Places Map → CSV Import.
  5. Insert [wp_places_map] on any page.

Shortcode

[wp_places_map]
[wp_places_map height="600" zoom="7" filters="yes" cluster="yes"]
[wp_places_map type="nemocnice"]
Attribute Default Description
height 600 Map height in px.
zoom 7 Initial zoom (overridden if markers fit bounds).
lat, lng from settings Initial centre.
type Render only places with this taxonomy term slug.
filters yes Show type filter pills above the map.
cluster yes Cluster overlapping markers when zoomed out.
class Extra CSS class on the wrapper.

Feeding the map from another post type

By default the map reads the plugin's own wppm_place CPT. When a site already has its locations in a post type of its own, five filters let the map read that instead, so the data doesn't have to live in two places:

Filter Signature Purpose
wppm_facilities_query_args ($args, $type) Point WP_Query at another post type.
wppm_facility ($row, $post) Build one place yourself. Return an array to use it, null to fall through. Runs before the GPS check, so you can supply coordinates from your own meta keys.
wppm_facilities ($out, $type) Last look at the whole collection before caching.
wppm_cache_post_types ($types) Post types whose saves bust the places cache.
wppm_filter_terms ($terms, $atts) Supply the type pills; a foreign source has no terms in wppm_place_type.

A place row needs at minimum id, title, lat, lng. Rows without usable coordinates are dropped. Optional keys: type, type_label, address, city, zip, phone, email, website, hours, description, image.

add_filter( 'wppm_facilities_query_args', function ( $args ) {
    $args['post_type'] = 'my_clinic';
    unset( $args['tax_query'] );
    return $args;
} );

add_filter( 'wppm_facility', function ( $row, $post ) {
    if ( $post->post_type !== 'my_clinic' ) {
        return $row;
    }
    return [
        'id'      => $post->ID,
        'title'   => get_the_title( $post ),
        'lat'     => get_post_meta( $post->ID, '_my_lat', true ),
        'lng'     => get_post_meta( $post->ID, '_my_lng', true ),
        'address' => get_post_meta( $post->ID, '_my_address', true ),
        'website' => get_permalink( $post ),
    ];
}, 10, 2 );

add_filter( 'wppm_cache_post_types', fn( $t ) => array_merge( $t, [ 'my_clinic' ] ) );

Release workflow

# Bump "Version:" in wp-places-map.php and "Stable tag:" in readme.txt, commit.
git tag v1.0.1
git push --tags

# Build a clean ZIP (only tracked files, top-level folder matches plugin slug):
git archive --format=zip --prefix=wp-places-map/ -o wp-places-map.zip HEAD

# Attach to a GitHub release — PUC prefers release assets over auto-generated source tarballs:
gh release create v1.0.1 wp-places-map.zip --generate-notes

Sites running the plugin pick up the new version within 12 hours (or instantly via Dashboard → Updates → Check again).

Auto-update internals

Plugin bundles YahnisElsts/plugin-update-checker v5.6 under lib/. On every check it queries the GitHub Releases API for newer tags, prefers ZIP assets whose filename matches /wp-places-map.*\.zip/i, and falls back to the source tarball when no asset is attached.

For private repositories or to raise the API rate limit, supply a Personal Access Token (scope repo):

  • Via UI: Settings → Places Map → "GitHub token".
  • Via wp-config.php (preferred for production):
    define( 'WPPM_GITHUB_TOKEN', 'ghp_xxxxxxxxxxxx' );

License

GPL-2.0-or-later. Vendored plugin-update-checker is MIT (lib/plugin-update-checker/license.txt).

Releases

24 releases. Each count is every asset in that release; expand a row for the breakdown.

Tag
Published
Assets
Downloads
v1.0.23 latest
Aug 26, 2026 25d ago
wp-places-map.zip
2
Aug 26, 2026 25d ago
wp-places-map.zip
1
Aug 26, 2026 25d ago
wp-places-map.zip
1
Jul 24, 2026 1mo ago
wp-places-map.zip
2
Jul 24, 2026 1mo ago
wp-places-map.zip
1
May 25, 2026 3mo ago
wp-places-map.zip
1
May 25, 2026 3mo ago
wp-places-map.zip
1
May 25, 2026 3mo ago
wp-places-map.zip
1
May 25, 2026 3mo ago
wp-places-map.zip
1
May 25, 2026 3mo ago
wp-places-map.zip
1
May 22, 2026 4mo ago
wp-places-map.zip
1
May 22, 2026 4mo ago
wp-places-map.zip
1
May 22, 2026 4mo ago
wp-places-map.zip
1
May 22, 2026 4mo ago
wp-places-map.zip
1
May 22, 2026 4mo ago
wp-places-map.zip
1
May 22, 2026 4mo ago
wp-places-map.zip
1
May 22, 2026 4mo ago
wp-places-map.zip
1
May 22, 2026 4mo ago
wp-places-map.zip
1
May 22, 2026 4mo ago
wp-places-map.zip
1
May 22, 2026 4mo ago
wp-places-map.zip
1
May 22, 2026 4mo ago
wp-places-map.zip
1
May 22, 2026 4mo ago
wp-places-map.zip
1
May 21, 2026 4mo ago
wp-places-map.zip
1
May 21, 2026 4mo ago
wp-places-map.zip
0