Coverage maps
Pins for the places customers come to, and shading for the areas you travel to: a circle of the radius you choose, or the area’s real outline. A Pro feature, off until you switch it on.
How each area is drawn
There is no separate system for premises and service areas. The map reads what each area already holds, set in its Area details and Map coverage boxes:
- Coordinates only: the area gets a pin. Somewhere customers come to you.
- Coordinates plus a coverage radius: it also gets a shaded circle showing how far you cover, with a small dot at the centre instead of a pin. Somewhere you travel to.
- A stored outline: the area’s real boundary is drawn and shaded, in place of a pin or a circle. Outlines come from the lookup described below.
So a business with two clinics and a mobile service across six counties plots both on the same map, and they read differently from each other. A radius suits coverage measured from a base, such as 25 miles from a depot. An outline suits coverage named after a place, such as a county, where a circle would miss half of it or spill into the next one. Radii are entered in miles or kilometres, whichever you choose in Pro settings. An area without coordinates is skipped rather than plotted at latitude zero.
Looking up coordinates and outlines
You do not have to type coordinates in. The Map coverage box on each area has a Look up coordinates and outline button, which searches OpenStreetMap for the area by its name and stores what it finds on your site: the coordinates, and the outline where the place has one. Under Local Pages, Pro settings, a second button does the same for every area still missing coordinates, ten at a time, because OpenStreetMap asks for no more than one request a second. Click it again for the next ten.
After a lookup the box shows the place that was matched. Names can be ambiguous, Alameda is both a city and a county, so check it. If it found the wrong place, make the area’s name more specific, for example by adding the county or state, and look it up again; the new result replaces the old one. The coordinates are also used in each page’s structured data, so they are worth getting right.
Use the lookup for regions, and type coordinates by hand for premises. A lookup on a town’s name usually returns the town’s outline, and an area with an outline is drawn as that outline rather than a pin, which is wrong for a branch customers visit. There is currently no button to remove an outline once it is stored, so for a branch, enter its coordinates in Area details and skip the lookup.
Where the map goes
[townsmith_map]in your blueprint maps each generated page’s own area, so one blueprint serves every page.[townsmith_map scope="all"]on a hub page maps every area you cover, premises and coverage together.[townsmith_map area="123"]maps one specific area wherever you want it.
Add height="480" to change the height in pixels. Scroll-wheel zoom is deliberately off, so the map never hijacks the page as a reader scrolls past it. If a map has nothing to draw because no area in it has coordinates yet, logged-in editors see a short notice saying why, and where to fill the coordinates in; visitors see nothing.
Turning it on
Under Local Pages, Pro settings, tick Coverage maps, and choose miles or kilometres for the radius. Until maps are on, the shortcode outputs nothing and no map tile is ever requested.
What loads from outside, and what does not
Maps reach a third party in two ways, so it is worth being precise about both.
Map tiles, for visitors. When maps are on, each visitor’s browser requests map tiles from OpenStreetMap, which means the visitor’s IP address reaches openstreetmap.org, the same as any other request their browser makes. Nothing about your site, your content, your pages or your customers is sent with it. Your area coordinates and outlines are printed into your own page, there is no API key and no account, and the mapping library is bundled inside the plugin rather than pulled from a CDN.
The lookup, for you. Only when you click a lookup button, your server sends the area’s name to OpenStreetMap’s Nominatim service, identifying itself by your site’s address as their usage policy asks, and stores the answer. Nothing runs on a schedule, on save, or when someone views a page.
The free plugin still makes no outside requests at all. Because a visitor’s IP reaches a third party once maps are on, mention it in your privacy policy, and consider a consent gate depending on where your visitors are. If you would rather not use OpenStreetMap’s tiles, the tile source is filterable through townsmith_lpe_map_config, so you can point it at tiles you host or pay for. The snippet is in the Pro add-on’s PRIVACY.md. For what maps look like in practice, see location pages with maps.