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

WP Places Map WP Registry grade A. No security issues foundWP RegistryNo security issues foundOpen the reportA

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

★ 0stars
27release downloads
v1.0.23latest · 2mo ago

Install

Download wp-places-map.zip From the v1.0.23 release on GitHub, Aug 26, 2026

Upload it under Plugins → Add New Plugin → Upload Plugin, then activate.

Install straight from GitHub with WP-CLI:

wp plugin install https://github.com/ales-pokora/wp-places-map/releases/download/v1.0.23/wp-places-map.zip
Updates itself. It ships its own updater, so new versions appear 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 2mo ago
wp-places-map.zip
4
Aug 26, 2026 2mo ago
wp-places-map.zip
1
Aug 26, 2026 2mo ago
wp-places-map.zip
1
Jul 24, 2026 3mo ago
wp-places-map.zip
2
Jul 24, 2026 3mo ago
wp-places-map.zip
1
May 25, 2026 5mo ago
wp-places-map.zip
1
May 25, 2026 5mo ago
wp-places-map.zip
1
May 25, 2026 5mo ago
wp-places-map.zip
1
May 25, 2026 5mo ago
wp-places-map.zip
1
May 25, 2026 5mo ago
wp-places-map.zip
1
May 22, 2026 5mo ago
wp-places-map.zip
1
May 22, 2026 5mo ago
wp-places-map.zip
1
May 22, 2026 5mo ago
wp-places-map.zip
1
May 22, 2026 5mo ago
wp-places-map.zip
1
May 22, 2026 5mo ago
wp-places-map.zip
1
May 22, 2026 5mo ago
wp-places-map.zip
1
May 22, 2026 5mo ago
wp-places-map.zip
1
May 22, 2026 5mo ago
wp-places-map.zip
1
May 22, 2026 5mo ago
wp-places-map.zip
1
May 22, 2026 5mo ago
wp-places-map.zip
1
May 22, 2026 5mo ago
wp-places-map.zip
1
May 22, 2026 5mo ago
wp-places-map.zip
1
May 21, 2026 5mo ago
wp-places-map.zip
1
May 21, 2026 5mo ago
wp-places-map.zip
0
A grade

Security

WP Places Map 1.0.23 · audited by WP Registry

No security issues found.

Audited release
1.0.23
Findings
none
Worst severity
—
Content hash
faa895f57b54399104188def…

WP Registry hashes the installable build and reports on that exact bytes-for-bytes copy. Embargoed findings are withheld until they are disclosed, so a clean verdict means nothing public is outstanding. WP Manifest does not audit code itself.