BuddyPress · BuddyBoss · Location and maps

Your members have locations but no map. This plugin puts them on one.

Members attach a place to any activity update, set a location on their profile, and appear as pins on the members directory map. Visitors search by address and radius to find members and groups nearby.

★★★★★ Works with BuddyPress and BuddyBoss Platform · Google Maps or keyless OpenStreetMap · Member and group directory maps

yourdomain.com/activity/check-ins
Google Maps Leaflet (keyless)
2 map providers to choose from: Google Maps with an API key, or OpenStreetMap through Leaflet with no API key and no billing account required
2 directory maps, one for members and one for groups, each with proximity search by address and radius to find who and what is nearby
3 address detail levels for member privacy: full address, city and state, or city only, with optional coordinate obfuscation on public pins

Built for

Built for six kinds of community operators.

Maps fill in the moment members save a location, with no key required if you stay on OpenStreetMap. Pick the scenario closest to how you run your community.

01

Community managers

A map sits above the members directory with a pin for everyone who saved a location. Members attach a place to any activity update from the post form, and that check-in shows an inline map in the stream. You decide which roles can see another member's Check-ins tab.

02

Membership site owners

Members set their location once on their profile through mapped xProfile fields, and the coordinates are geocoded and stored for the directory map and proximity search. A Nearby tab uses the visitor's browser location to show only members within a set radius.

03

Local and regional networks

Visitors type an address and a distance into the directory search to find members within that radius, in miles or kilometres. The same proximity search runs on the groups directory so people find the chapters and meetups closest to them.

04

Privacy-conscious operators

You choose how much address detail other members see and can switch on coordinate obfuscation so public map pins are coarsened with a per-check-in offset. Raw coordinates stay in the database so proximity search keeps working.

05

Group and chapter organizers

Each group gets a location tab where admins enter the group's address, and every located group appears as a pin on the groups directory map. A [bpchkpro_groupmashupMap] shortcode drops a standalone group map onto any page.

06

Site owners watching for cost

OpenStreetMap through Leaflet renders the maps and Nominatim handles geocoding with no API key and no billing. If you prefer Google, switch the provider and verify your key against four Google endpoints from the settings screen.

See it in action

How BuddyPress Check-ins Pro looks on your site.

Switch between the three surfaces in the preview: the directory mashup map, the activity location picker, and the admin settings.

yourdomain.com/activity/check-ins
Google Maps Leaflet (keyless)

The members directory map shows a pin for every member who saved a location, and clicking a pin opens an info window with the avatar, name, and address. The [bpchkpro_mashupMap] shortcode renders the same member map on any page (up to 500 members, filterable by WP role and BP member type), and [bpchkpro_groupmashupMap] does the same for groups. Maps render with Google Maps or with keyless OpenStreetMap through Leaflet.

yourdomain.com/activity/check-ins
This week · 14 check-ins

A location picker is injected into the activity post form so a member attaches a place or GPS coordinates to a status update. The place name, latitude, and longitude are saved as activity meta, and the check-in renders an inline map below the entry in the stream. When Youzify is active the picker moves to its compatible hook. Members can delete their own check-ins from the profile Check-ins tab.

yourdomain.com/wp-admin/admin.php?page=wbcom-settings
Settings
Enable on activity stream
Show on member profiles
Email notifications
Allowed roles

Admin settings span tabs under the Wbcom Designs menu: a Map tab picks the provider (Google Maps with an API key and a verify button, or OpenStreetMap), General sets the Check-ins tab label and slug, expiration window, privacy level, and obfuscation, Members and Groups directory tabs toggle the map and proximity search and exclude individual members or groups from the pins, and a Tools tab generates or clears demo location data.

Step 1 of 3

Find nearby

Search members and groups by address and radius.

A proximity search replaces or supplements the default search box on both the members and groups directories. A visitor types any address and a distance, in miles or kilometres, and the directory filters to the members or groups inside that radius. A Nearby tab on the members directory swaps the typed address for the visitor's own browser location, and both the radius options and the distance unit are set in the admin.

  • Address and radius search on the members directory and the groups directory
  • Distance unit and radius options are admin-configurable, miles or kilometres
  • A Nearby tab uses the visitor's browser location instead of a typed address
  • Stored coordinates stay full so proximity stays accurate even with obfuscation on
yourdomain.com/activity/check-ins
Google Maps Leaflet (keyless)

Privacy

Show the area without giving away the address.

You decide how much address detail other members see: full address, city and state, or city only, applied to profile display and directory listings. Switch on coordinate obfuscation and every public map pin and check-in link uses a coarsened lat/lng with a deterministic per-check-in offset that scales with the privacy level. The raw coordinates in the database are left untouched, so proximity search and the Nearby tab keep returning accurate results.

  • Three address detail levels: full address, city and state, or city only
  • Coordinate obfuscation offsets public pins from about 110 m to about 11 km
  • Per-check-in deterministic offset, so a pin does not jump around between loads
  • Raw coordinates stay in the database so proximity search is unaffected
yourdomain.com/wp-admin/admin.php?page=wbcom-settings
Settings
Enable on activity stream
Show on member profiles
Email notifications
Allowed roles

Works with

BuddyBoss, Youzify, and two map providers.

The plugin runs on standard BuddyPress and on BuddyBoss Platform, adapts to Youzify when present, and renders maps with either Google Maps or keyless OpenStreetMap. These are the platforms and providers it works with out of the box.

  • BuddyPress

    The core requirement. Check-ins use the Activity component, the directory map and proximity search use Members, and group locations use Groups. Member coordinates are stored in user meta and group locations in group meta, with no custom tables.

  • BuddyBoss Platform

    Runs alongside standard BuddyPress on BuddyBoss Platform, so the directory maps, check-ins, and group locations work the same way on a BuddyBoss community.

  • Youzify

    When Youzify is active the activity location picker moves to its compatible hook so it sits correctly in the composer. The members directory Nearby tab is not shown under Youzify.

    when Youzify is active
  • Google Maps

    Renders maps and geocodes addresses through the Google Geocoding API when you supply an API key. An admin AJAX verify button tests the key against the Geocoding, Places, Distance Matrix, and Directions endpoints.

    requires a Google Maps API key
  • OpenStreetMap (Leaflet + Nominatim)

    Renders maps through Leaflet and geocodes through Nominatim with no API key and no billing account. This is the default provider pair when the plugin is first activated.

    no API key required

What you get

Location check-ins, directory maps, and proximity search.

Every license is the complete plugin. Members check in from the activity form, set a location on their profile, and show up on the members and groups directory maps. Proximity search, the Nearby tab, group location fields, privacy controls, two shortcodes, and the choice between Google Maps and keyless OpenStreetMap all ship in the box. The only difference between tiers is how many sites the license covers.

01

Check in from the activity post form

A location picker is injected into the BuddyPress activity post form so members attach a place or GPS coordinates to any status update. The place name, latitude, and longitude are saved as activity meta under bpchk_place_details, and an inline map renders below the check-in in the stream and in oEmbed contexts. When Youzify is active the picker moves to its compatible hook. Each member gets a Check-ins tab on their profile and can delete their own check-ins.

02

Member directory map and proximity search

A map renders above the members directory with a pin for every member who has a saved location, and clicking a pin opens an info window with the avatar, name, and address. A proximity search replaces or supplements the default search box with an address and radius form, in miles or kilometres, and a Nearby tab uses the visitor's browser location to list members within a configurable radius. Administrators can exclude individual members from the map pins while keeping them in the listing.

03

Group locations and group directory map

Each BuddyPress group gets a location tab where group admins enter the group's address as a single combined field or as separate street, city, state, postal, and country fields. Every located group appears as a pin on the groups directory map, and the groups directory gets its own address-and-radius proximity search. The group Check-ins tab label and slug are configurable, and specific groups can be excluded from the map pins.

04

Profile location fields, geocoded

Map one or more BuddyPress xProfile fields as a member's primary location, either a single combined address field or separate street, city, state, ZIP, and country fields. When the member saves their profile the address is geocoded and the coordinates are stored in user meta for the directory map and proximity search. Geocoding runs through the Google Geocoding API or through Nominatim, matching the map provider you chose.

05

Location privacy and coordinate obfuscation

Choose how much address detail other members see: full address, city and state, or city only. The privacy filter applies to profile display and directory listings while stored coordinates stay full for proximity search. Turn on coordinate obfuscation and every public map pin and check-in link uses a coarsened lat/lng with a deterministic per-check-in offset that scales with the privacy level, from about 110 metres up to about 11 kilometres. Raw coordinates in the database are never changed.

06

Map shortcodes, widgets, and expiring check-ins

Two shortcodes drop standalone maps onto any post or page: [bpchkpro_mashupMap] for members and [bpchkpro_groupmashupMap] for groups, each with limit, filter, size, and type attributes. A Members Near Me sidebar widget lists members near a given location and radius, and an admin dashboard widget reports how many members and groups have locations plus the top cities. An optional expiration window (1, 6, 12, or 24 hours) lets an hourly cron delete check-ins after they age out, or keep them forever.

07

Google Maps or keyless OpenStreetMap

Pick Google Maps, which needs an API key and a billing account, or OpenStreetMap rendered through Leaflet, which needs no key at all. The geocoder follows the same choice: Google Geocoding for Google, Nominatim for OpenStreetMap. An admin AJAX action verifies a Google Maps API key against four Google endpoints (Geocoding, Places, Distance Matrix, and Directions) and reports which are ready. The plugin defaults to the keyless OpenStreetMap and Nominatim pair out of the box.

Made for

Six audiences. One product.

Community managersMembership site ownersLocal and regional networksPrivacy-conscious operatorsGroup and chapter organizersSite owners watching for cost

Pricing

Same complete plugin on every tier. Pick how many sites you run.

Every tier ships the full feature set: activity check-ins, member and group directory maps, proximity search, the Nearby tab, group location fields, profile location fields, privacy and obfuscation controls, the two map shortcodes, and the choice between Google Maps and keyless OpenStreetMap. Tiers differ only by the number of sites your license covers. Yearly plans include a year of updates and support; lifetime plans pay once and keep updates forever.

Personal

$49 / year

or $149 lifetime

One community site.

  • 1 site
  • Activity check-ins and directory maps
  • Proximity search and group locations
  • Google Maps or keyless OpenStreetMap
  • 1 year of updates + support
Get Personal at $49 or lifetime at $149
Most popular

Professional

$99 / year

or $299 lifetime

Five sites. Freelancers and small agencies.

  • 5 sites
  • Activity check-ins and directory maps
  • Proximity search and group locations
  • Google Maps or keyless OpenStreetMap
  • 1 year of updates + support
Get Professional at $99 or lifetime at $299

Agency

$129 / year

or $349 lifetime

Unlimited sites for agencies running many community builds.

  • Unlimited sites
  • Activity check-ins and directory maps
  • Proximity search and group locations
  • Google Maps or keyless OpenStreetMap
  • 1 year of updates + support
Get Agency at $129 or lifetime at $349

Before you install

Questions community operators ask.

Answered by the team that maintains the plugin. Anything else, reach out through the contact page.

  1. 01

    Does this require BuddyPress?

    Yes. It runs on BuddyPress or BuddyBoss Platform and uses the Activity component for check-ins, the Members component for the directory map and proximity search, and the Groups component for group locations and the group directory map. It is a standalone Pro plugin, not an add-on to a free version.

  2. 02

    Do I need a Google Maps API key?

    No. The plugin ships with OpenStreetMap rendered through Leaflet and Nominatim for geocoding, which needs no API key and no billing account, and that is the default. If you prefer Google Maps, switch the provider on the Map tab, paste your key, and use the verify button to test it against the Google Geocoding, Places, Distance Matrix, and Directions endpoints.

  3. 03

    Does it have a REST API?

    No. The plugin does not register any REST API routes. All of its asynchronous work runs through WordPress admin-ajax, with five AJAX actions covering xProfile location save, API key verification, and the demo data generate and clear tools. New integrations follow the same admin-ajax pattern.

  4. 04

    How do members add a location?

    Two ways. They attach a place or GPS coordinates to any activity update from the location picker on the post form, which saves a check-in with an inline map. They also set a primary location on their profile through one or more mapped xProfile fields, which is geocoded on save and used for the directory map and proximity search.

  5. 05

    How does proximity search work?

    An address and radius form replaces or supplements the default search box on the members and groups directories. A visitor types any address and a distance, in miles or kilometres, and the directory filters to members or groups inside that radius. A Nearby tab on the members directory uses the visitor's own browser location instead of a typed address.

  6. 06

    Can members hide their exact location?

    Yes. You set how much address detail other members see: full address, city and state, or city only. You can also turn on coordinate obfuscation so public map pins use a coarsened lat/lng with a per-check-in offset that grows with the privacy level, from roughly 110 metres to roughly 11 kilometres. The full coordinates stay in the database so proximity search still works.

  7. 07

    Can I keep some members or groups off the map?

    Yes. Administrators select individual members or groups to exclude from the directory map pins through a multi-select in the Members and Groups settings. The excluded members and groups still appear in the directory listing itself; they just do not show as pins.

  8. 08

    Can I put a map on a regular page?

    Yes. The [bpchkpro_mashupMap] shortcode renders a standalone members map and [bpchkpro_groupmashupMap] renders a standalone groups map, each up to 500 entries by default. Member maps filter by WP role and BP member type, group maps filter by status and group type, and both accept width, height, and a CSS type attribute.

  9. 09

    Do check-ins stay forever?

    That is your choice. By default check-ins are permanent. If you set an expiration window of 1, 6, 12, or 24 hours on the General tab, an hourly WordPress cron deletes check-in activities once they pass their expiry time. Setting the window to never keeps every check-in in place.

  10. 10

    What happens to the data if I uninstall?

    Settings are stored as WordPress options, member coordinates live in user meta, group locations in group meta, and check-in details in BuddyPress activity meta. There are no custom database tables. Deactivating leaves all of this in place; for a full removal, delete the related options and meta after deactivation.

Put your community on the map.

Activate the plugin, pick Google Maps or keyless OpenStreetMap on the Map tab, and map an xProfile field to a member's location. The members directory map fills in as people save addresses, members start checking in from the activity form, and you turn on proximity search, the Nearby tab, group locations, and privacy controls from the settings tabs whenever you are ready.