MAM companions
GeoFilters
Contributes distinct city/region rows (with coordinates) to mam_geofilter_list from listing postmeta, with the derived _mam_bd_city / _mam_bd_region fallback for single-address sites. Lets a GeoFilters app scope the directory to a city or region.
Special Offers
Exposes each listing’s coordinates and radius to mam-special-offers (mam_specials_get_post_lat / _lon / _radius from flat lat/lon), caps a listing’s offers by its plan (no_of_deals_included), hard-hides the deals button from non-crew, and attaches the wp-admin Deals meta box to wpbdp_listing.
Chat Manager
Adds a chat action to the listing detail screen (a listing_staff chat group), gated per plan by chat_with_venue (allowed unless explicitly disabled — the no-code default). Staff invite accept/revoke syncs chat-group membership.
Notification Manager
Registers the Business Directory notification set (see Business Directory notification types) and dispatches pushes for new-listing, staff, approval, and claim events. The Send Notification form pushes to favorited / nearby (_user_lat/_user_lon Haversine) / all users within the plan’s pn_per_month quota.
Reviews Manager
Registers a Business Directory reviews provider (priority 20, claims wpbdp_listing) — but only when both MAM Reviews Manager and the Business Directory Ratings module are present. The provider writes through the Ratings module’s native path so app and website ratings share one source of truth.
Business Directory Elite modules
These ship with the Business Directory Elite membership; activate them in Directory → Modules.
Claim Listings (Elite)
Powers the claim button, free/paid claim rails, and ownership transfer. Claims live in the module’s own table; paid completion rides a real Business Directory payment. See Recipe: Claim listing subscriptions.
Ratings
Backs the reviews provider above. Ratings are a single 1–5 criterion stored in the module’s ratings table (not WordPress comments), with live-computed aggregates. If the module isn’t active, the default WordPress-comments reviews provider owns listings instead — and app/web ratings would diverge, so keep this module active if you use reviews.
Google Maps
Geocodes addresses on the website and stores the module geolocation object. The field_hash rule matters: any coordinate write must include a valid field_hash or the module re-geocodes over it. The app-side save writes the object with a hash and suppresses the module’s own save-time geocode so there is a single coordinate writer. Radius search uses our flat lat/lon (the module’s ZIP search is bounding-box only).
Related articles
- Plugin: mam-business-directory
- Mobile listing data shape
- Recipe: Claim listing subscriptions
- Recipe: Fee-plan MAM fields
- Business Directory notification types
Metadata
| Field | Value |
|---|---|
| Article type | Integration Reference |
| Plugin slug | mam-business-directory |
| Category | Integrations |
| Audience | WordPress admin, PHP dev |
