In late 2015 I hit upon an idea that would take about six months to come to fruition. The idea was to take WordPress, with its marvellous graphic and page layout abilities, and turn it into a full fledged learning management system (LMS). This is not an easy task but I accomplished about 80% of the work and I mocked up some beautiful pages for my Scots to Canada project.

This blog post will walk you through a few of my goals, challenges, and solutions as I tried to create a WordPress-based e-learning website that had the characteristics of an LMS. The main process was:

  • designing an e-learning website in WordPress (using the Divi theme)
  • trying to make WP behave like an LMS to maximize technical potential
  • investigating the various plugins that can convert WP to an LMS (the best are paid)
  • implementing my own solutions to enable LMS-style functionality


Designing an e-learning website with WordPress and the Divi theme

I’ve been using WordPress seriously for about ten years. About two years ago I discovered the Divi theme, which permits great leaps forward in custom page design. Elegant Themes, the makers of Divi, have also created a plugin called the Divi Builder, which can be used with any theme. Essentially each page becomes a playground for a modular approach to web page design. Here’s an image of a rendered page and the Divi Builder structure in the background.


Divi and the Builder are a great theme and plugin combo but they’re just the tip of the iceberg. There is a revolution going on in terms of the ease with which a designer can make their vision come alive with WordPress themes. Want a full width image followed by a 3-column section? No problem. How about easy ways to embed media players? Parallax scrolling? Check, check, check. It’s all there. And a vertical scrolling website is a very intuitive and natural way to view web-based text, images and media. (More on the benefits of vertical scrolling in a future blog post).

Trying to Make WP Behave Like a Regular Learning Management System (LMS)

Now I’ve been doing my research. A lot. And I have a certain amount of intuition about this, but it strikes me that though in a visual sense there is no doubt WordPress can be a great solution for an educational website, there still may be gaps in terms of functionality.

Though conventional LMS systems like Moodle have their limitations, they have some built-in functionality which is considered a must have with an LMS. The question is can you create an online course in WordPress, and include those must have elements? We require: a clear course structure in the navigation, the inclusion of content authored in tools like Storyline or Captivate, and the ability to record quiz results and track student progress?

The challenges are there but I was able to determine that with a handful of plugins and some extra elbow grease, this was indeed possible. Also rearing its head was the option to get it done with a paid plugin such as LearnDash, a WordPress plugin that leads the field but costs more than a $100 for the entry package.

First of all, what features was I looking to add to my site? Here’s a starter list:

  • Registration – the ability to register users and create categories like “Student”
  • Social Profile – allowing students to create a rich user profile of the sort found in slick cloud-based LMSs like Schoology
  • Clear navigation – the user’s current location and the overall course structure have to be readily at hand
  • Tracking / Recording – the capability to see how a user progresses through the material, and view assessment results
  • Interactive / Authored Content – the ability to embed animations or quizzes created in authoring tools like Articulate Storyline 2 or Adobe Captivate

I also had these requirements of a WordPress-based LMS:

  • Sophisticated page design –  though not typical of LMS tools this is a priority for my site, and why I am using WordPress
  • Low-cost – the tools had to be either free or very affordable

Those to me were the basic requirements. As I started my search I found that this would not be easy. Membership plugins allow for user registration and allow for various kinds of profiles and user communication, so that was relatively simple to cover. Also, adding content authored in e-learning software wasn’t too difficult either. A plugin to add Captivate content failed me but a superb plugin from H5P allowed me to embed a quiz as a web object (essentially the same concept as embedding a YouTube video). The difficulty however lay in finding a way to implement a very clear navigation system and being able to track and record user progress.

What plugins did I use? I found a WP plugin called “Progress Tracker” which I liked, but I decided it wasn’t going to meet my requirements without a great deal of hacking. By default it uses red to signify early progress and green to signify completion. To me it wasn’t worth changing the code, and I decided it would be better to build my own solution. In the end I built some old-fashioned navigation with various buttons and animations. My innovation was that my progress bar is animated. This was accomplished in Photoshop and After Effects.


Above: visual of two different approaches to a course progress bar

I also discovered there a multitude of membership plugins, many of which offer a free version that allows for a rich user profile and creation for form fields for registration. That’s relatively time-consuming but easy. As I mentioned, the H5P plugin is great. The “iframe embed” tool allows for embedding animations and authored e-learning content into WordPress pages (which are notoriously fickle for HTML embeds). I found that a statistics plugin would log users as they progressed, including time spent on various pages, which covers a large part of the tracking requirement.

In the end I decided to build a content-based course. There is text, photos, embedded videos and audio players, and even a Captivate test quiz. I have covered in my mind about 80% of the required functionality. I also spent some time looking at WP LMS plugins, which I’ll detail in the next section. None of which seem to meet every one of my requirements though some came close.

WordPress Learning Management System (LMS) Plugins

I’m going to keep this short because I believe it can be covered relatively quickly. If you have the budget and want to quickly get a course up and running using WordPress then there are some plugins that are well-regarded and available for purchase, including LearnDash, Sensei and Lifter. I’ll try to summarize their merits and then explain why I didn’t go with any of them for this particular project.

After surveying the numerous articles and blog posts I determined that LearnDash and Sensei are the current WordPress LMS plugin leaders. Both cost at minimum around $100 to set up one site, and this includes a year-long subscription which includes service and updates. LearnDash has the best reputation and looks like a good investment – especially if you know you’ll be developing many courses or sites in the long-term and you’ll be using WP to do it. Sensei looks great if you want to sell courses because it integrates well with WooCommerce which is known for e-commerce Lifter, a newcomer has many great features and offers a free fully-functioning version. If you search the WP plugin repository you”ll find other plugins with free versions such as WP Courseware.

I tried free plugins and looked at demos for LearnDash (looks great, especially the quizzes!). My issue was that from the get-go there were niggling constraints about how my course would look and function out of the box. I was afraid the rich page designs, the expanded social user profiles, and other features I had in mind, would not be easily implemented without editing and adding code. I didn’t try LearnDash though there is a 30-day money back guarantee because I wasn’t sure of my long-term needs. I have a hunch though that I can design rich pages that make use of LMS plugins so I haven’t given up on that. It’s just a matter of need, budget, and having the time to experiment.

Wrap Up: Totally Satisfied With My WordPress LMS Course

In the end I decided that my priority was creating a beautiful course with graphically-complex pages, and I think I accomplished that. At present, I have 3 of 6 units built out and I plan to finish off the rest soon. I have some great navigation and I sourced some awesome images. As a media producer I was able to create some audio and interactive elements, and I plan to create a short introductory video as I undertake the second part of the build phase. It’s looking great and working really well.

Is it worth building an e-learning site in WordPress? Absolutely. WP can accomplish many great things and be a great solution for web-based learning and development. And in future posts I’ll reveal more about my mission to create a WordPress LMS.

Thanks for reading. If you’re interested in a preview of the Scots to Canada online course let me know via email by emailing me at mike @


Scots to Canada Project Demo (Version1):

LearnDash WordPress LMS

Sensei WordPress LMS

Lifter LMS

What do you think?

What has been your experience with using WordPress for educational websites? Does it have what it takes to be an LMS or solid e-learning site? Please leave a comment.