Downtown Arnprior
Downtown ArnpriorThe Challenge
Downtown Arnprior has eighteen storefronts inside a five-minute walk and nowhere online that speaks for all of them. Someone deciding whether to drive in on a Friday afternoon has no way to know which shops are open, what is on this weekend, or who is running a sale.
The businesses themselves are not the problem. Most have a Facebook page, some have a website. What was missing is the thing that makes a downtown feel like a downtown: one address for the whole block.
The constraint that shaped every decision was who keeps it current. Shop owners and volunteers, not web people. If updating a listing means learning WordPress, the site is out of date inside a month and everyone quietly stops trusting it.
The Approach
The site is a WordPress block theme with a custom plugin holding seven post types: shops, events, sales and offers, news, and the pieces that support them. Nothing is a freeform paragraph. Every shop, event and offer is structured data, which is what lets the front end do things a page of typed text cannot.
The homepage answers the only question a visitor actually has. It reads each shop's hours and reports how many are open at this exact minute, next to a live weather strip and the date of the next market. The count is read from each shop's own hours, not typed in by anyone.
Owners never meet the WordPress editor. A shop joins through a keyed link that opens one on-brand form and nothing else, and a submission lands as pending and waits for a person. That same pattern is being extended so owners post their own events and sales from the front of the site, in our design, with WordPress staying underneath as the filing cabinet.
It was built for a handoff from the start. Directory and event output is isolated to four template files, so the data can move to a dedicated membership platform later without rebuilding the site around it.
The Result
Live at downtownarnprior.ca, with the shops loaded and the join link in the hands of real owners.
Privacy was a build constraint rather than a policy page written afterwards. The view counter stores a month, a thing that was looked at, where the click came from, and a number. No visitor is identified, and no shop can see another shop's traffic.
Six security passes are on record before launch, each one written down alongside what it did not cover. A directory holds other people's business information and other people's customers, and that is worth auditing on purpose rather than hoping.