What is an LMS?

If you want to sell or provide more than one online-course, chances are you will need a Learning Management System (LMS). An LMS is basically a software that enables you to deliver, administrate and track online courses or training programs.

Typically, with an LMS you can creatie eLearning content (modules, lessons), organize it into courses, deliver the content, enroll students to courses, and, finally, monitor and assess their performance.

There are many LMS vendors out there that mainly sell cloud-based solutions. While this can be very comfortable in terms of the technical set up, there are some pitfalls that have to be considered:

  • most of the times these ready-to-use LMSs are only customizable to a certain extent
  • it is very difficult to find an LMs that provides all the features you need and want
  • you aren`t really in control of all the data that is collected (e.g. student data)
  • oftentimes you have to pay per user which can become really expensive


Build your own LMS with WordPress

One alternative to the cloud-based LMS solutions could be to build your own LMS with the open source CMS WordPress. Here are the main advantages of using WordPress for this endeavour:

  • WordPress is open source software, which means it is free to use
  • WordPress is easy to use, you can set up a basic website in minutes
  • WordPress is highly customizable, there are thousands of themes and plugins available which provide you with the opportunity to give your website a unique look and add the features you want
  • You are in control of all the data


How to set up an LMS with WordPress and LearnDash

In the following I`m going to show you what you need to create your own LMS with WordPress.


#1 Setting up WordPress

First of all, if you don`t already have a WordPress site, you have to install WordPress. This is pretty simple. Most hosting services provide a One-Click installation for WordPress. But you can also install WordPress manually. There are several tutorials out there on how to do this. Here is one of them.


#2 Getting the LearnDash plugin

If you want to build an LMS with WordPress, you will need a plugin, i.e. an extension, which provides the features of a Learning Management System. There are several plugins available which do exactly this. Currently my favourite LMS plugin is LearnDash. Unfortunately, it is not free. At the moment you can get a single license for $159. But in my opinion it`s totally worth it.


#3 Installing a Theme

A theme is basically  the “skin” of your website. It determines the look and feel, e.g. layout and colours. LearnDash usually can be used with any modern WordPress theme in terms of compatibility. That means you can basically choose whatever theme you like for your LMS. However, there are some themes that were built specially for LearnDash-based learning platforms, e.g.


I personally, use GeneratePress for simple learning platforms and the DIVI theme for more “advanced” projects.

Once you decided on a theme, installation is quite easy. Just follow these steps:

  • Log in into your WordPress admin panel
  • Click Appearance > Themes > Add new
  • Use the Upload button to upload a zip file of your theme
  • Click Activate


Have a look at the theme`s individual installation guide for additional setup features or settings.

Once you`ve installed and activated the theme you can start to create your pages and menu (e.g. Homepage, Registration page, Contact page, etc.)


#4 Setting up LearnDash

You can install LearnDash like any other plugin.

  • Just go to Plugins in your admin panel
  • Click Add new
  • Upload the zip file of the LearnDash plugin and activate it

Now you find a “LearnDash LMS” menu in your admin panel with different options to choose from.

LearnDash settings

You find the LearnDash settings under LearnDash LMS > Settings.

Make sure to enter your LearnDash support license ID under Settings > LMS License


Creating a course

If you can create a page or post in WordPress, it won`t be a problem for you to create a course. Because creating a course, lesson or topic is the same as creating a page or post.

Before you can add your content, you first have to create a course. A course is so to say the overall “frame”. To that frame you can later add the content in the form of lessons, topics and quizzes.

Just go to LearnDash LMS > Courses > Add New

Now you can add the course title and description.


Below you find the LearnDash Course Builder.

Here you can add lessons, topics and quizzes by clicking the “Plus” button next to each item and then dragging and dropping it to the respective course.

This way you can build your course structure.


LearnDash Course settings

If you scroll down you find the Course Settings. Choose the options that apply to your course (e.g. course price type). You find more information about the different options by clicking the question mark next to every option.

Once you added all the details, do not forget to click “Publish”.



Adding lessons and topics

Next, you want to add you content. To do this, you have to edit the lessons and topis you created within the Course Builder. There are two ways to do this.

Option 1

The first option would be to click the “Edit” icon in the Course Builder next to the lesson you want to edit. A new window opens where you can add your content and define the settings.

Option 2

The second option would be to go to LearnDash LMS > Lessons and select the lesson you want to edit.


Adding a quiz

Adding a quiz is similar to adding a course. Just go to LearnDash LMS > Quizzes and click “Add New”. Now you can add a title, a description and your questions.

Make sure to select the course the quiz should be associated to within the quiz settings.

You will find more information and guidelines about how to set up a course in LearnDash in the LearnDash documentation.


Further (free) plugins to extend your WordPress LMS

With LearnDash you are able to create your own learning platform with courses, lessons, topics and quizzes. LearnDash even provides an option to sell courses using PayPal. However, often you will need additional features or e-commerce capabilities. Thus, in the following I am going to show you some plugins which could take your WordPress LMS to the next level. (Please note that the list is not exhaustive)



WooCommerce: one of the most popular e-commerce plugins. WooCommerce can be used to sell digital as well as physical products. There is a LearnDash – WooCommerce integration available.

Easy Digital Downloads: Another e-commerce plugin to sell virtual goods.


Membership Plugins

Paid Memberships Pro: this plugin helps you to build a membership site. There is a LearnDash intergration available


Interactive Content

H5P: with this free plugin you can add interactive content (e.g. interactive videos, presentations, quizzes) to your courses


Social Learning / Community

BuddyPress: with BuddyPress you can build your own social network with activity streams, private messaging and custom profiles

bbPress: add private or public forums to your courses



Gamipress: with this plugin you can gamify your courses by adding points, badges and leaderboards. You can also connect it with H5P interactive content.

BadgeOs: this is a favourite badge and points solution for WordPress sites


Blended Learning

Event Espresso: with this plugin you can offer elearning combined with live events

Tin-Can API

GrassBlade: with this plugin you can launch Tin-Can API courses created with Captivate or Articulate



A WordPress-based LMS can be a really good alternative to cloud-based learning platforms. Sure, you need to put some time and effort into this project to get it work. But the main advantage is that you can build your LMS the way you want it to be and you are not dependent on third-party vendors.