Create Your First Store Locator
Install, activate, and go live in 6 simple steps. No code required.
Read guide →Step-by-step guides to help you create, customize, and publish beautiful store locator pages in WordPress — no code required.
The most-read guides by new users — pick one and follow along.
Install, activate, and go live in 6 simple steps. No code required.
Read guide →9 built-in styles — find the one that matches your brand and use case.
Compare templates →Override any design token without touching PHP or writing custom CSS.
Learn styling →Seed demo data, validate templates, and export configs from the terminal.
View commands →No code required · 10 minutes
Follow these 6 steps to set up a working store locator on your WordPress site. By the end you’ll have a live, searchable map your customers can use to find your retailers.
Go to Plugins → Add New, search for Retailers Management for WooCommerce, click Install Now then Activate. A new Retailers menu will appear in your dashboard.
Go to Retailers → Add New Retailer. Fill in the store name, address, phone, and website. Click Geocode address — the plugin will find the map coordinates automatically. Save and publish.
Go to Pages → Add New. Give it a name like “Find a Store”. In the block editor, click +, search for Store Locator, and insert the block. You’ll see a placeholder — the live map appears on the frontend.
Click the Store Locator block to open the Block settings sidebar. Pick a Template (e.g. Dark Rail or Grid) and a Layout (split map+list, map-only, or list-only). Set a default center city so the map opens in the right location.
In the Block settings, turn on Show search bar and Use my location. If you have retailer categories (types), enable the Type filter so visitors can filter by store type.
Click Publish. Visit the live page to see your store locator in action. Share the page URL in your footer, navigation, or product pages.
9 built-in styles — pick one to match your site
Dark sidebar on the left for search and results; light map on the right. Clean, app-like feel.
Two-column card layout with search on top. Great for pages with many retailers.
Floating card list over a full-bleed map — Google Maps style. Maximum map visibility.
Groups retailers into tabs: Nearest / Nearby / Further. Ideal for dense urban areas.
Slate-black background with high-contrast cards. Pairs with the dark map preset.
Override accent color, radius, shadows, and spacing with a simple JSON attribute. No PHP required.
Paste a shortcode into any page, widget, or theme template
Start with the simplest shortcode and add options as needed. All parameters are optional — defaults come from Retailers → Settings.
Build your settings once in the Locator Builder, then reference the slug here. Any attribute you add in the shortcode overrides the saved config.
Add the locator visually without any code
The Store Locator block is the easiest way to add a locator. All settings are available directly in the Block sidebar — no shortcode needed.
Edit any page. Click the + button in the toolbar or in the content area.
Type Store Locator in the search box and click the block with the map pin icon. A preview placeholder appears in the editor.
Click the block. The Block settings panel on the right shows all options: template, layout, height, search bar, filters, map center, and more.
The editor shows a placeholder — the real interactive map only loads on the published page. Click Preview to see it before publishing.
Add, edit, and organize your store list
Each retailer is a WordPress post with address, contact details, opening hours, categories, and a map pin. Here’s how to manage them effectively.
Show open/closed status automatically
Open any retailer and scroll to the Opening Hours panel. Toggle each day on or off and set the opening and closing time. The locator automatically shows Open now or Closed labels based on the visitor’s local time.
Let visitors filter by category and location
Visitors can filter retailers by category using the type filter. To enable it, add show_type_filter="1" to your shortcode, or toggle it in the Block settings.
Match the locator to your brand without editing PHP
Every visual detail — colors, spacing, card radius, shadows — is controlled by CSS custom properties (--rmfw-sl-*). Override only what you need using the custom_tokens shortcode attribute.
| Token | What it controls | Example value |
|---|---|---|
--rmfw-sl-accent | Buttons, pins, active states | #e11d48 |
--rmfw-sl-card-bg | Store card background | #0f172a |
--rmfw-sl-card-radius | Card corner radius | 20px |
--rmfw-sl-sidebar-bg | Search sidebar background | #1e293b |
--rmfw-sl-marker-color | Map marker / pin color | #0ea5e9 |
custom_tokens attribute.
Build once, embed on any page
The Locator Builder lets you save a named configuration — template, layout, search settings, map center — and then embed it anywhere with a single slug. No repeating shortcode attributes.
homepage-map) and click Publish[rmfw_store_locator] on any page will automatically load that config’s options.
Quick fixes for common problems
initial_results="all" in the shortcode so stores appear without a visitor search. Increase the default radius in Settings if needed.radius in the shortcode (e.g. radius="100") and ensure all retailers have been geocoded. Add radius_choices="10,25,50,100" so visitors can also expand the search themselves.[rmfw_store_locator] as literal text instead of rendering the map.height that wasn’t set.height="600px". Try the default template first to rule out a template-specific issue. Check your browser DevTools for CSS rules overriding display:flex or height on .rmfw-sl-container.Tips for a fast, user-friendly store locator
Map + list side-by-side helps visitors orient themselves spatially. Use Grid or List-only when you have 30+ retailers.
Limit retailer types to 3–5 categories. Too many filter options overwhelm visitors. Use clear, short labels.
Name types after what the customer calls them — “Authorized Dealer” not “Type A Reseller”. Visitors should self-filter without guessing.
Aim for 500–650px on desktop. 100vh works for full-page locator sections. Avoid fixed heights that break on mobile.
Test the locator on a phone. Use the Overlay or Dark Rail template — both are responsive by default. Avoid list-only on mobile unless the map adds no value.
Manually set a store’s hours to a time in the past to confirm the Closed label shows correctly. Verify across time zones if you have international stores.
For developers, CI pipelines, and power users
Run these from your server terminal
Every [rmfw_store_locator] parameter
| Attribute | Values | Default |
|---|---|---|
template | default · dark · grid · overlay · distance-board · dark-rail · minimal · corporate · vibrant | default |
custom_tokens | JSON object of --rmfw-sl-* overrides | — |
card_variant | horizontal · vertical · compact · minimal | template default |
map_style | standard · silver · dark | template default |
distance_unit | km · miles | km |
| Attribute | Values | Default |
|---|---|---|
layout | split · map-only · list-only | split |
height | CSS value (px, vh) | 600px |
| Attribute | Values | Default |
|---|---|---|
show_search_bar | 1 · 0 | 1 |
show_use_my_location | 1 · 0 | 1 |
radius | number (km) | 20 |
radius_choices | comma-separated km values | 5,10,20,50 |
initial_results | none · all · by-type | none |
show_type_filter | 1 · 0 | 0 |
clustering | yes · no | no |
config | slug or numeric ID | — |