The club kit
The theme and plugin behind clubs.racerpacer.com. Free, GPL licensed, and yours to change.
The kit builds a site of club pages, one per club, each at its own address: yoursite.org/club-name/. It’s what runs clubs.racerpacer.com. Have a look at an example club before reading any further; it explains the idea faster than I can.
It works as a directory for lots of clubs, with each club editing its own page. It works just as well for one club on its own: you’re the only owner, and you switch the directory off.
Download the club kit 1.7.0 (zip, 885.0 KB)
What goes on a club page
- A logo. JPG, PNG or WebP, at least 512px square. It’s re-encoded on upload, and it’s the only image a page can have, which keeps copyright problems off the site.
- Links. The membership form, the kit shop, the Sunday route, with one highlighted as the main button.
- Socials. Icons for Strava, Instagram, Facebook, WhatsApp, Discord, Komoot, Meetup, Spond, YouTube, TikTok, X, Threads, Bluesky and LinkedIn.
- Meet-ups. Day, time, where, a pace, and a GPX route per meet-up. The route opens as a map with an elevation profile, and runners can download the file for their watch.
- A look. Six colour presets in light or dark, an accent colour of the club’s choosing, four font pairings, and button and background styles. Text contrast is enforced whatever they pick.
- A QR code for the page, for posters and the back of the club vest.
How it runs
A club signs up at /join/ and picks its address. The page starts as pending and you approve it in wp-admin. From then on the owner edits it at /my-club/, with a live preview beside the form, and never sees wp-admin at all. One club per account.
If a club changes its address, the old one redirects to the new one and stays reserved. Every page has a “report this page” link that emails you. Sign-ups go through a honeypot and a timing check, and you can add Cloudflare Turnstile if spam gets through anyway.
What you need
- WordPress 6.3 or later, on PHP 8.0 or later
- Hosting that sends email reliably. Sign-up and password emails are the whole flow, so set up SMTP (the hosting post covers it)
- Optional: the Working Detail Cookies plugin, if you want Google Analytics. It’s in the zip, and it holds analytics back until a visitor agrees
Before you go live
Replace the RacerPacer logos in the theme’s assets/img/ folder; they’re our trademark, not part of the GPL. Set the site name in Settings → General and the notification email in Clubs → Settings, read through the Terms and Privacy pages it creates (they’re a starting draft, not legal advice), and turn routes off in the same screen if you’d rather the site made no request to the map tile server.
The whole list, in order, is in the launch checklist.