14 Jun

WP Courseware Tutorial


wp courseware learning management system client logos

WP Courseware Features:

Structure, Controls and Interface:

With WP Courseware you have Courses, Units and Modules. Units go inside Modules and Modules go inside Courses.

wp-courseware-menu-sideQuizzes go inside Units, but Quizzes are created separately from a different menu. When you work on a Unit, you select from a drop down list what Quiz to add to it. Alternatively you can use their drag and drop interface, which is much easier, but takes a bit of clicking around to find (hint: it’s under “Training Courses” > “Modules, Units & Quiz Ordering”).


wp-courseware-quiz-drag-dropCourses and Modules are under the same menu in the WordPress Dashboard. Modules don’t really do much except give a description to a set of Units. They can be thought of like “Unit sets.”

wp-courseware-add-module-screenUnits have their own separated menu in the User Interface (UI). This is because Units are where most of your teaching will take place and what you’ll update the most (see above screenshot).

Units have a “duplicate” option for easy re-creation. This would be useful if you wanted the contents of a Unit to be available in more than one Course or Module.

wp-courseware-units-list-screen-with-duplicate-optionUnits are a Custom Post Type. In other words, they ‘look’ just like the Post and Page editor in the WordPress back end, except there are no categories, tags, ordering options or featured images. This is a very simplified editor without custom fields, author boxes, or much other than the basics. The only major option you’ll have here is to choose a template based on a file that you previously coded (techno-phobes need not apply).

wp-courseware-course-unit-single-edit-screenWhen using media to display course lessons, the company developed a way to serve “protected” video content using AmazonS3 cloud storage files. This requires another plugin installation. However, the advantage here is that you won’t have to self-host video content for it to be available to members only.

You can optionally block users from seeing future Units if they haven’t passed previous ones. This is how to create a pre-requisite functionality.

Notifications can be customized, such as those that appear when Units are completed.

wp-courseware-e-mail-notifications-settingsExisting WordPress users can be individually added to a Course or be revoked from a Course. Users can be individually or collectively set back to the beginning of a Course, Module or Unit. These functions are added to the “Users” menu of WordPress.

wp-courseware-user-roles-screenYou can give all existing WordPress users bulk access to a Course, or select to only allow all Administrators access.


wp-courseware-user-accessYou can bulk import users, and a sample CSV file for doing this is available. This is useful if you already have a class roster or are migrating from a site or plugin.

You can export or import Courses, but importing requires the XML file to have been created by the WP Courseware Export function. This is mainly for site migrations.


Quizzes and Marking

wp-courseware-quiz-summary-screenWP Courseware sends e-mails to students and teachers when milestones are reached (such as completing a course or passing a quiz). E-mails can contain quiz grades, cumulative course grades and links to download a certificate of completion, among others. These are controlled by “E-mail Template Tags” easily accessible in the Course Settings.


wp-courseware-e-mail-notifications-settingsQuizzes can be multiple choice, true or false, open ended or graded through a file upload.

Options for Quizzes are extensive. For example, they can be in “Survey Mode” where there are no correct answers. They can require a minimum passing mark to progress to the next Unit, they can show correct answers before progression, show what was inputted, and explain the answer. They can also be viewed later. These are options, so you can turn them off to prevent class cheating.


wp-courseware-edit-quiz-questionsQuiz questions come with a drag-and-drop re-ordering feature.

Quizzes can include manual grading, such as for essays or other types of files (like coding files, Excel sheets with formulas in them, or designs made into PDFs, for example). You can limit what types of files may be uploaded, for added security.

Quizzes support media files, so you can have a question that references an image or other file, where the student answers based on what they see or download.

wp-courseware-file-upload-optionsScoring can be automated for non-essay or non-open-ended questions (results are e-mailed).

Avoiding the send-out of Quiz results can be done on a per-Module basis, which is useful for final exams.

If a student fails a quiz, they are automatically asked to re-take it until they pass, if the Quiz is set to “blocking.” They can’t progress to the next Unit until they pass. Or, a teacher can set a Quiz to “non-blocking” so a user only gets one chance to either pass or fail.

There is a shortcode that can be used to display progress and cumulative grades on a page or post.

Each course has a “Grade Book” area where teachers can see users enrolled in specific courses. This screen shows students’ progress, grades, quizzes taken, and whether or not they have received their marks. This page also allows for mass e-mailing of final grades to students so long as they have completed the course (this is mainly applicable to quizzes with open ended questions or essays that can’t automate the sending of a final score in the system). The Grade Book can also be exported as a CSV in case teachers need to input information into another school system.



Certificates can use a custom background, include your logo and have a text or image-based signature. Certificates are delivered based on the following logic, according to Nate Johnson, co-founder of the WP Courseware plugin:

If a course is set to deliver a certificate, it will do so only after the final unit is marked as complete. If the final unit does not include a quiz, the certificate will be generated when the unit is marked as complete. If the final unit includes a ‘non-blocking quiz,’ meaning progress is not restricted to a passing score, the certificate will be generated when the unit is marked as complete (regardless of quiz score). If the final unit includes a ‘blocking quiz’, meaning a passing score is required, the unit will not be marked as complete until that passing score is achieved and therefore the certificate will not become available until the passing score is achieved.

wp-courseware-certificate settings

Development Needs

This plugin uses shortcodes to display much of its content. This means pages displaying an ‘archive’ of Courses, Modules or Units is not available by default. A user will need to learn how to manually create these, using the “Documentation” menu (this may not be easy for non-developers).

wp-courseware-documentation-screenThis shortcode usage can come in handy because it allows course information to be displayed within a pre-defined div (such as the ‘regular’ content area of a WordPress Page). This can mean less coding work with theming and templating.

wp-courseware-page-with-shortcodesThere is an option to turn off default CSS so you can style to your heart’s content.

Tables created by the plugin (which contain a lot of its content) may need work to be responsive.



There is currently no way to make course content public. Even if you wanted your courses to be free, a user would have to register to access it. If selling courses, this can be troublesome if you wanted to offer sample lessons or previews of a course to potential buyers.

There is currently no way to give only a portion of WordPress users access to a Course, or revoke (i.e. un-enroll) access. This can be done one-by-one, however.

Courses and Modules don’t have a “duplicate” option, but there is not much to duplicate in those areas anyway. The Units, where most content is entered, does have this.

Certificates can only be turned on or off when a user “completes” a course. For Courses with no pre-requisites (i.e. ‘non-blocking’) this means that if users complete a course but fail, they can still download a certificate.

At present Quizzes cannot display a randomized order of questions to help prevent cheating.