Creating “Hidden Courses” in LearnDash

By: Justin Ferriman • May 17, 2017
Filed Under:

Don’t want to show all available courses on your course list? No problem! You can hide any course you choose.

If you have multiple LearnDash powered courses available to your learners then you might not want all of them to be available in the course list. This can be the case if you have a one or two courses that only apply to a select group of learners.

For example, if you are using LearnDash for internal employee training then it doesn’t make sense to include manager-specific courses in the course list for all employees since only managers will need to take these select courses.

To configure hidden courses using LearnDash you will need to leverage two features:

  1. Course List shortcode
  2. LearnDash Groups

Here is one possible way to set this up:

Step 1: Add Tag to Non-Hidden Courses

Add a meaningful Tag to all the courses that should not be hidden. It can be anything that makes sense in the context of your site. Use “curriculum”, or even just “courses”. The important thing is that you add this tag to all courses except the ones that you want to hide.

Step 2: Create a Course List for the Tag

Now that all courses that should be visible have a tag you can use the course list shortcode on a regular WordPress page to insert this list.

Go to PAGES > ADD NEW and title the page “Available Courses” (or something similar).

Next, insert the Course List shortcode.

If our tag is “curriculum” then the shortcode may look like this:

[ld_course_list course_tag="curriculum"]

As a reminder, use the Shortcode Wizard to insert this shortcode to ensure proper formatting.

For adding additional formatting and features to this list, you can use the free Course Grid add-on.

Step 3: Redirect ‘/courses’ to Page Created in Step 2

This is a simple step but an important one. Now that you have a new page listing courses you will want to make sure that anyone who attempts to go to “yourdomain.com/courses” is redirected to the new page (i.e. “yourdomain.com/available-courses”). You can easily configure this redirect using a free plugin.

Step 4: Create a LearnDash Group

Now that your course list is created it’s time to create a LearnDash Group of the users who should have access to the hidden course(s).

To do this just go to LEARNDASH LMS > GROUPS > ADD NEW. Select the desired users as well as the hidden courses to associate with the Group. Last, publish the group.

Once published any user who is part of that Group will be automatically enrolled into the associated hidden courses and will appear on their profile under “Enrolled Courses”.

That’s all there is to it! Feel free to experiment with more elaborate set-ups by using multiple tags (or categories) and even by leveraging other shortodes that control view access!

Justin Ferriman

Justin started LearnDash, the WordPress LMS trusted by Fortune 500 companies, major universities, training organizations, and entrepreneurs worldwide. He is currently founder & CEO of GapScout. Justin’s Homepage | GapScout | Twitter