<- Back to all work
Case study

WOW First Aid Training

Rebuilding a Pembrokeshire training provider's website so twenty-plus courses book correctly, sit in one clear structure, and the owner can run the whole thing herself without touching code.

Client
Way Out West First Aid Training
Sector
First aid & safety training
Platform
Wix, CMS, Velo
Scope
Build, CMS, integration, SEO
Wix EditorWix CMSVelo (JavaScript)Wix Data APIHTML & CSSDubsado integrationResponsive embedsSEO

Way Out West runs first aid, mental health, paediatric, pet and forestry training across Pembrokeshire, and sells and books every course online. The existing Wix site worked, but it had grown into a set of category pages that funnelled everyone toward one central booking hub, with no proper page per course. Bookings run through Dubsado, which had to stay. Tracy wanted a site that read clearly, sent people to the right course, and, above all, one she could update herself without paying for a developer every time a course changed.

The challenge

Three booking systems and a bug sending people to the wrong course

The catalogue was bigger and messier than it first looked. Twenty-plus courses sat across three different booking models: certificated courses booked through Dubsado schedulers, online courses that link out to a training partner, and community sessions that take an enquiry rather than a live booking. On top of that there was a real fault on the live site: the Mental Health in the Workplace Level 3 course pointed its Classroom and Blended buttons at the same Dubsado scheduler, so anyone booking the classroom option was quietly sent to the blended course.

Wix added its own constraints. Its native repeaters could not reproduce the course-card design Tracy had signed off, and its HTML embeds run as sealed iframes that cannot read the site's own database. So the real problem was not just "make it look right", it was how to keep a hand-designed layout while making the courses live in a database the owner can edit.

The approach

Design once, drive it from the database

Rather than rebuild the design inside Wix's limited components, I kept the hand-coded course cards exactly as designed and fed them from the Wix CMS. The site's content lives in a database Tracy edits through simple rows, and the coded design renders itself from those rows. Build the layout once, and every course, now and in future, flows through it.

01 - The coding

I hand-built the course cards in HTML and CSS to match the signed-off design, then wrote the logic in Velo, Wix's JavaScript layer. Because Wix embeds are sandboxed and can't query the database directly, I built a postMessage bridge: page-level Velo reads the courses from the CMS and passes them into the embed, which renders the cards.

Each card's buttons build themselves from the data, so a course shows "Book Blended" and "Book Classroom", a single "Book Now", or "Enquire", depending only on which links are filled in. I also worked around Wix's embed quirks the hard way: fixed-height iframes with separate desktop and mobile heights, links set to break out to full pages, and embeds stretched full width so the responsive layouts actually trigger.

Paediatric and family course cards on the WOW site, each with its own booking buttons

02 - The CMS work

The premium site started with nothing but a Wix demo collection. I built the Courses collection from scratch and added the fields the site needed: separate scheduler IDs for blended and classroom delivery, a category, and the card content fields (title, subtitle, description, tags, image, booking and enquiry links, sort order, and a show-on-site toggle). Fifteen real qualifications went in, structured so that Tracy edits a row and the matching page updates on its own, which was the whole point of the job: no coding each time a price or a date changes.

Pet first aid course cards built from the same CMS-driven card layout

03 - The background & data work

A lot of the value sat under the surface. I used the Wix Data API to create the collection, strip out the demo rows, and load the fifteen courses with their categories, descriptions and booking IDs programmatically rather than by hand. I checked all twenty-one Dubsado scheduler IDs line by line against Tracy's own booking document, and once a proper standalone scheduler existed for the Mental Health Level 3 classroom course, I wired it in and closed the booking bug that had been misrouting people. The three separate booking models were consolidated into five clean category pages, each reading from the right source, so the front end feels like one tidy catalogue even though the plumbing behind it is not.

Course category structure on the WOW homepage with statistics band above
Integration & brand

Keeping Dubsado, losing the clutter

The Dubsado booking system stayed exactly where Tracy needed it, embedded into the course pages, with the enquiry and contact forms wired to the right places. Alongside the build I tightened the structure into a simple navigation and five course categories (Workplace & Professional, Paediatric & Family, Community & Young People, Pet First Aid, Online & Specialist), and gave the site a warm, community feel rather than a clinical one: teal used as an accent rather than a wash, a two-font limit, trust strips, reviews and a clear enquiry route. Each page got its own SEO title and meta description as part of the build.

WOW First Aid homepage hero with Google review rating and booking buttons
Outcome

What it delivers

  • Every course books to the correct place, with the misrouting bug fixed.
  • Twenty-plus courses across three booking models organised into five clear categories.
  • A CMS-driven site the owner can update herself, no developer needed for routine changes.
  • The bespoke, signed-off design preserved rather than flattened into stock components.
  • SEO groundwork laid page by page, ready for launch and a clean domain switch.
What this demonstrates

Web design that survives a platform's limits: bespoke front-end code fed from a CMS, three booking models untangled, and a site the owner can genuinely run herself.

Ready?

Get a free scope and quote

Tell me the boring job that is eating your time. I will tell you the quickest way to fix it, with a clear scope and price. No pressure, no jargon.