Add Courses To Your WordPress Site In Just 10 Minutes, For Free!

Add Courses To Your WordPress Site In Just 10 Minutes, For Free!

There are many reasons why you might want to add courses to your WordPress site: to broaden your appeal to your audience; to generate revenue; or simply to educate and inform.

Since CoursePress Pro was launched we’ve added sooo much new stuff. Head over to the project page to check out all the new features! Check out CoursePress Pro

Whatever your reasons, you’ll need a course management system to manage your courses and your students. CoursePress (Free VersionPro Version), is just a such a system and is the latest release from WPMU DEV.

Let me show you how you can add courses to your WordPress site in less time than it takes to read this post.

CoursePress 10mins Featured
With CoursePress, you can create engaging courses for your audience in just 10 minutes

Be Prepared

The motto of millions of scouts worldwide is also a prerequisite step for any content creator, including a course content creator.

Yes, you can sit down and craft a course off the top of your head but it’ll be a whole lot easier if you have performed some preliminary thinking.

How your course will structured?

A CoursePress course contains 1 or more units; each unit contains 1 or more pages; each page contains 1 or more elements.

CoursePress comes bundled with 10 elements for adding content to a page:

A screengrab of the element selection panel on the course unit creation screen
10 elements allows you to create highly engaging course content, including quizzes

A page can contain multiple elements, including the quiz types (multiple choice, single choice and answer field), so you need to think carefully about how the content you have available, how you will group it into pages and units.

In particular, you’ll need to think about how the person taking the course (the student) will navigate between the units. You can set a unit as a prerequisite for the next unit to ensure that the course is completed in a predetermined order.

One common method for ensuring that students have actually consumed a unit’s content is to place a quiz somewhere in the unit flow.

With CoursePress you can either add a quiz as an additional page in a unit or create a unit specifically to act as a container for the quiz. As a rough guideline, place a quiz on an additional page to test a unit; and place a quiz in its own unit when you want to test multiple previous units with the one quiz (where you can also use pages to split the quiz up).

How much it will the course cost?

CoursePress comes bundled with, and offers seamless integration with, WPMU DEV’s e-commerce solution MarketPress, allowing the charging for courses.

Most of the MarketPress integration is behind the scenes and the general e-commerce settings such as the payment gateway and a course’s price are all controlled via the CustomPress interface.

MarketPress supports a full range of payment gateways including PayPal Express Checkout, PayPal Payflow Pro and Stripe and also allows you to set your price using a wide range of currencies (depending on the gateway selected).

Even if a course is a paid course, you can still make certain units freely available to enable prospective students to “try before they buy”.

Who Will Be Able To Take The Course?

CoursePress offers a range of options for who is eligible to enroll on your courses. It does depend, however, on the general WordPress Membership setting.

If this setting is not checked (the default), and therefore visitors cannot join the site, then all registrations for a course must be made manually: the site admin will need to create a new user and then add them in the course’s student list page.

If the setting is checked (anyone can register) then you’ll have several new options for controlling course enrollment:

  • Anyone – any member of the site can enroll on a course
  • Anyone with a passcode – restrict access to a course through a pre-set passcode
  • Anyone who has completed the prerequisite course – select an existing course to ensure that only those students who have completed that course can enroll on the new course

Fully Integrated Or Separate Sub-domain?

The final decision you need to make is where to locate your courses.

You can fully integrate CoursePress into your existing site for a seamless experience. You’ll likely need to perform some work on the styling of the CoursePress components to completely match the look and feel of your site. How much obviously depends on your theme and the level of integration you want to achieve.

Alternatively, you could set up your courses on a separate sub-domain, either a new install of WordPress or a new site in a multisite installation. The advantage of this approach is that you can use the CoursePress theme which is specifically designed to deliver CoursePress courses.

Adding Courses – The 10 Minute Guide

Okay, so let’s get to creating a course. We are going to step through how to create a free course that anyone can enroll for. For the purposes of this post, we’ll look at using CoursePress in a site that is using the CoursePress theme. Future posts will tackle integrating CoursePress into an existing theme.

Step 1 – Install CoursePress

CoursePress comes in 2 flavours: Pro and Standard. The Pro version is available to all WPMU DEV members or from the WPMU DEV site for $19. The Standard version is available for free from the WordPress plugin repository.

The major differences between the two versions are:

  • The Standard version is limited to the creation of 2 courses (Pro allows unlimited courses)
  • The Standard version provides payment via PayPal and Simplify (Pro supports over a dozen payment gateways, including Stripe).

Step 2 – Configure CoursePress

Before we configure CoursePress itself, let’s check and update a couple of WordPress settings first.

Firstly, go to Settings > General and click on the checkbox for Membership (Anyone can register). This will give us more options for who can enroll.

Secondly, staying in Settings, click on Permalinks. Ensure that Post name is selected and click on Save Changes if necessary.

You’ll have noticed that activating CoursePress added a new item to the WordPress admin menu. Click on CoursePress and then on the bottom item, Settings.

There are 4 tabs but the good news is that you don’t actually have to change anything to set up a course. These settings are somewhere to revisit once you are comfortable with setting up courses.

Step 3 – Create A Course

Okay, down to the business end. Let’s create a course.

Click on New Course and you’ll find the course creation form, divided into its 6 tabs.

Course Overview

This is where you give a course a name, a short overview – and it really does need to be short – and a listing image. You can also set the language the course is being delivered in.

These details are used in the Course Listing and at the top of the Course Details page:

Screengrab of a course listing in the front-end of a CoursePress enabled website

Course Description

Here you can expand on the course contents by adding a video and providing a more in-depth description of the course. Both these elements are used on the Course Details page.

Screengrab of the About this course section of the Course Details page
The description is critical in selling your course to your audience

You can also control how the structure is displayed and set preview options.

Checking the Show the Course Overview structure and Preview Options will enable the display of the structure on the Course Details page. If this is a paid course then you can enable units to be browsable (“free preview”) by the checking the box next to the unit.

Screengrab of the Overview section of the Course Details page
The Course Structure will give potential students a clear idea of what to expect from the course

We’ll revisit this after we have created the units.

Checking Display Time Estimates for Units and Lessons will add the estimated time to complete a unit (this is set in the unit itself) to the Course Structure.


Each course requires one or more instructors. To assign an instructor to a course, click on the drop down and either select a name from the list or use the search facility.

The list is built from the site’s users, so to add a new instructor you’ll first need to add them to the site as a user or use the Invite New Instructor form.

Course Dates

Specify the date the course starts and finishes as well as the dates between which students can enroll for the course.

Use the options for no end date if the courses can be taken and completed at any time.

Classes, Discussion & Workbook

If a course is to be limited in size – perhaps because it is an instructor led class, or you simply want to restrict availability – then check the Limit class size option and enter the maximum number of enrollments that can be accepted.

Enabling discussions allows students to interact with each other as well as, of course, the instructor. The discussions are formatted as questions and answers and all questions for a class / course combination are visible to all students in the class.

Screengrab of a discussion
Encourage interaction with and between students by enabling discussions

Enable and disable the discussion feature via the checkbox.

The final option in the tab is the Workbook. Enabling this option, provides the student with an overview of their interaction with the course. Quiz results are listed, detailing the date the answer was submitted and the grade. The answers themselves are also available for review.

Screengrab of the Workbook for a student for a particular course showing progress for each of the Units
Workbooks allow students to track their progress. Very useful for larger courses.

Enrollment & Course Cost

The final tab is where you determine who can enroll in the course and the cost of the course.

As I mentioned earlier, who can enroll is heavily influenced by the WordPress Membership setting and unless you want to manually add students you will almost certainly want to allow anyone to register with the site and then select one of the extended enrollment options.

For the purposes of this post, we’ll set enrollment to Anyone.

To charge for a course you need to check This is a paid course, enter a price and set up a payment gateway if you haven’t already done so (for example, this is your first course).

For the purposes of this post we’ll leave the course as a free course. We’ll cover the various options for how to charge for courses in a later post.

Step 4 – Add The Units

We’ve stepped through setting up a course, now we need to add the actual content.

If you have already thought about the structure of your course then this step is going to be far easier. It’s well worth spending the time up front designing your units and their pages.

Creating a course should have taken you to the Units tab. If not, click on Courses in the CoursePress menu and move your mouse over the course you just created to activate the action menu. Click on Units.

Screengrab of the Unit creation screen
Add elements to Pages to create Units for your course all from the one interface.

For each unit, add a Unit Title, set the Unit Availability. You also need to determine whether the unit needs to be completed before the student can access any subsequent units.

TIP: To drip-feed the course content to students, rather than making the entire course available immediately, set the Unit Availability to a future date.

Now it’s time to add pages to the unit. Pages are displayed much like a paged WordPress post, so you need to carefully consider about how you’ll break up your content in pages for optimal learning.

To build a page, just click on on an element and complete the details. You can add as many elements to a page as you want; they are displayed in a concertina making them easy to access and update.

Add as many pages as you need by simply clicking on the +. Just remember that pages cannot be reordered: another reason for preplanning.

TIP: Add as few elements as possible to a page; multiple elements will be too distracting.

TIP: Put quiz elements on a separate, final page.

When you’ve finished creating your pages, click on Save at the top of the unit page. Add as many new units as you need.

At any time you can reorder your units by simply dragging and dropping their tab.

TIP: If you put quiz elements in their own units then you can make just these units mandatory.

Step 5 – Publish The Course

Once you’ve added all the content, you need to publish the course before it’s available to students.

It’s important to remember that both courses and units effectively have a status and it’s entirely possible to publish a course but not see any units because they are still in draft mode.

So, the first thing to do is to change your units’ status to Live.

Go to each unit and look in the top right hand corner where you’ll find the Status switch: click on the switch to change the unit status to Live. You’ll also notice that the grey circle on the unit tab also becomes green.

Screengrab of the Units tab showing the Unit tabs
Make sure all your units are Live before publishing your Course

When you’ve changed the status of all the required units to Live, you are ready to publish the course itself. To the right of the course tabs you’ll see another switch for Publish Course. Click on this and the switch will slide to the right and turn green.

Go to the home page of your site and you’ll find two new options added to the main menu, one of which will be Courses. Click on it and you’ll see your new course listed. Click on Details to see more information and to enroll on the course (if the dates allow).

You’re now in the education business!

Offering Preview For Paid Courses

If you set up your course as a paid course then you might want to offer one or more units for free to enable potential students to “try before they buy”.

To do this, click on the course in the Course Listing, then on the Overview tab and then on Step 2 Course Description where you’ll find Course Structure.

Screengrab showing the Course Structure admin where units can be selected for free previewing
Give potential students a free preview of selected units of paid courses

Click on the checkbox of the course units that you want to make available for preview and click on Update.

Could Courses Enhance Your Digital Offering?

No-one knows your audience better than you do and you’ll be able to quickly determine whether adding courses to your content mix will enhance your digital offering.

If you are using WordPress as an internal communications channel then it’s almost certain that CoursePress will be of use for delivering training on everything from how to submit an expense claim to the meeting regulatory requirements for training all employees about sexual harassment.

For commercial publishers, courses offer a way to leverage expertise and specialist knowledge using a medium that an audience is far more accepting in having to pay for.

Regardless of your situation or your motivations, CoursePress will allow you to quickly and easily bring functional and engaging courses to your audience.

Download CoursePress from the WordPress plugin repository (Standard version) or from WPMU DEV (Pro version).