Ruhler Community Resource Directory Wordpress Plugin - Rating, Reviews, Demo & Download
Plugin Description
Ruhler Community Resource Directory lets any nonprofit or community service organization — a food bank, a clothing closet, a legal-aid clinic, a tutoring program, a health clinic network — manage its physical locations and the services offered at each one, entirely from wp-admin, and publish an accessible public directory that visitors can search and filter.
Every core feature works on a plain WordPress installation. No API key, account, or paid service is required to publish a complete, useful directory.
Manage your locations in wp-admin
- A dedicated “Resource Locations” area in wp-admin, using WordPress’s own familiar publish/draft/trash workflow — no separate approval step, no new login for your staff to learn.
- A “Services Offered” taxonomy so you can organize and later filter locations by the services each one provides.
- Address and contact fields (street, city, state, postal code, phone, website).
- A weekly hours editor supporting hours-not-provided, closed, specific open/close times (including overnight hours that run past midnight), and open-24-hours — plus dated exceptions for a specific day (for example, a holiday closure) that override the regular weekly schedule.
- Map coordinates for a location are entered by hand in this version. There is no automatic address-to-coordinates lookup yet (see “What this version does not include” below).
- A one-time, dismissible reminder on your Dashboard confirms your directory page is live and points you to “Add your first location.” It disappears permanently once you publish your first location, and never appears anywhere except the Dashboard and Plugins screens.
What visitors see
- A searchable, filterable public directory: search by name, description, city, state, or ZIP/postal code; filter by service; and an “Open Now” toggle — all without JavaScript. Every one of these is a real page reload with a real URL, so it works exactly the same with JavaScript on or off.
- Locations are always listed with the ones open right now first, then locations opening later today, then closed, then locations with no hours entered yet — so a visitor never has to hunt through closed locations to find one that’s actually open.
- Each location shows its current status in plain language — “Open now,” “Open until 5:00 pm,” “Opens at 9:00 am,” “Opens later today,” “Closed today,” “Open 24 hours,” or “Today’s hours unavailable” when hours simply haven’t been entered yet.
- An individual page for every location — name, status, description, services, address, phone, website, weekly hours, and any upcoming schedule exceptions — instead of the generic blog-post layout (author byline, post navigation, comments) WordPress would otherwise use. This replacement page works the same way on both classic and block themes, and your theme can override it (see the FAQ).
- “Near Me,” an optional, visitor-initiated distance sort. Nothing happens until a visitor clicks “Use my location” — no background or automatic location request is ever made. Near Me works whether or not the map is turned on.
- An optional map view, described fully in “Map privacy” below.
Add it to a page
Two ways to publish the directory, and both support the same options:
- The
[crd_locator_finder]shortcode. - A “Resource Directory Finder” block in the block editor’s inserter, with the same settings available as a visual panel instead of shortcode attributes.
By default, either one shows every published location with no restrictions. Two optional settings let you scope a single instance of the directory:
- Limit to one service — shortcode:
[crd_locator_finder service="legal-aid"](using the service’s slug); block: the “Limit to one service” dropdown in the block’s settings panel. Once set, that instance only ever shows locations offering that service — visitors cannot switch it to another service or back to “All services,” and a search or “Open Now” filter a visitor applies still only searches within that one service. This is meant for a page dedicated to one kind of help (for example, a “Find Legal Aid” page), not a general-purpose filter a visitor can change. - Maximum locations to show — shortcode:
[crd_locator_finder count="5"]; block: the “Maximum locations to show” setting. Shows only the top N locations (by the same open-first ordering described above). Leave it at 0, or omit it, to show every matching location with no limit.
Both settings can be combined, and you can place as many separately-configured instances of the shortcode or block on your site as you like — each one works independently.
Map privacy
The map is a completely optional feature, off by default. Turning it on is a deliberate, informed choice:
- Map mode does nothing until an administrator visits the map settings screen, chooses a tile provider (a ready-made OpenStreetMap option, or your own self-hosted/other compatible server), and explicitly checks an acknowledgment box after reading the disclosure shown on that same screen. That acknowledgment is required again any time the provider, URL, or attribution text changes.
- The map-drawing library (Leaflet, an open-source project) is bundled with this plugin. It is never loaded from an external CDN.
- The ready-made OpenStreetMap option requests tiles from OpenStreetMap’s tile service, subject to the OpenStreetMap tile usage policy and OpenStreetMap Foundation privacy policy. If you configure a different provider, review that provider’s terms and privacy policy before enabling it.
- Once enabled, a visitor’s own browser requests map tile images directly from whichever provider you chose. Tile requests necessarily reveal the approximate map area being viewed, and the provider also receives the ordinary information any web request carries (such as IP address and browser information), subject to that provider’s own policies. Resource names, descriptions, addresses, phone numbers, and every other database record from your directory are never included in a tile request.
- Near Me is entirely separate from the map and does not require it. A visitor’s location, when they choose to share it, is read directly from their browser and used only in that browser to sort the list by distance for that page view. This plugin does not store it, and does not send it anywhere — not to this plugin’s own site, and not to the map tile provider.
What this version does not include
- Automatic geocoding or address verification. Coordinates are entered by hand (see above).
- Importing locations from a spreadsheet or an external service’s API.
- Any integration with a third-party provider database.
- Built-in analytics or reporting.
- A ZIP-radius search backed by a postal-code distance dataset (search and Near Me both work today; a dedicated ZIP-radius dataset is not included).
- Any automatic, ongoing synchronization with an external data source.
None of the above requires an account, subscription, or API key to use this plugin’s current features — they are simply not part of this version.
Screenshots
The public resource directory: search and service filters, an integrated map alongside the result list, and locations ordered by what’s open right now.
Filtering to Housing Support, then sorting by distance with the visitor-initiated “Near Me” feature — no location data is stored or sent anywhere.
An individual location’s own page: current status, contact details, services offered, and its full weekly hours, styled by the active theme.
Adding a location in wp-admin: address and contact fields, the Services Offered taxonomy, and the Publishing Readiness checklist (guidance only — it never blocks publishing).
The weekly hours grid and Schedule Exceptions, for holiday closures or one-off hours changes on a specific date.
The “Resource Directory Finder” block in the editor, with its “Limit to one service” and “Maximum locations to show” settings.
The map’s privacy settings: an explicit disclosure, a choice of tile provider, and a re-required acknowledgment before the map can go live.

