Work /Fertility Support Company January 2018

Fertility Support Training

A CMS in ZF3 for selling video courses: video and slides in one player, quizzes, PDF certificates, pay per view and coupons, and a plugin that put it inside WordPress over an API.

A CMS written in ZF3 for organising and selling video courses, built at Inclusive Digital for the Fertility Support Company in the UK. It is the counterpart of the WordPress learning plugin I had built to go into many sites: this one went into a single client, and precisely because of that it did not have to be a WordPress plugin at all.

One player, two things playing

A recorded talk is a person speaking and a deck moving along with them. So the player is not a video player: the video and the slides run in the same one, in step, and moving through the deck is part of watching rather than something happening in another window.

Split them into two boxes and you hand the viewer a job they did not ask for, which is deciding where to look. It sounds like a detail and it is the whole experience of a recorded lecture.

What a course platform has to be certain of

Around the player sits the rest of it: quizzes on the material, progress tracked per person and per course, and a certificate at the end, generated as a PDF carrying the name of whoever earned it.

That certificate is why the progress tracking has to be right rather than approximate. It is a claim, and it leaves the platform as a file somebody can forward to an employer. A progress bar that is a little optimistic is a cosmetic bug; a certificate issued to someone who did not finish is a different kind of problem.

Paying is not one switch

Content went out pay per view, with several purchase options and coupons on top of that.

Which means the platform cannot answer "is this person entitled to this" with a single lookup. Entitlement could have been acquired in more than one way, and one of those ways may have been discounted, so the question has to be asked of a model that understands purchases rather than of a flag on a user.

WordPress is the shop window, not the shop

It also shipped a plugin that put the whole thing inside a WordPress site over an API. That is the decision worth pointing at: the CMS keeps the courses, the progress and the money, and WordPress does what it is good at, which is being the public site the client already knows how to edit.

Building the courses and the payments as WordPress itself would have tied all of it to a theme and to whatever plugins the site was already carrying. Kept apart, the platform could be dropped into the site instead of becoming it.