Protect your course content by membership level with LearnDash LMS and Paid Memberships Pro utilizing our Courses for Memberships Add On.

How To Protect LearnDash Content with PMPro

  1. Install and activate plugins.

    To bridge LearnDash LMS and Paid Memberships Pro, you will need Paid Memberships Pro, our Courses for Membership Add On (free) and LearnDash installed and activated on your site.

  2. Navigate to Memberships > Courses.

    Check the box “LearnDash” to enable the LearnDash module. Save settings.

  3. Edit your LearnDash course or group.

    Locate the ‘Require Membership’ metabox in the Settings sidebar. Check any membership levels that should grant access to this LearnDash content. Members with those levels will automatically be enrolled in the associated course or group.

  4. Navigate to LearnDash LMS > Courses > Settings.

    Set the Course Access Settings to “Closed”. Save and update your course. Refer to the LearnDash documentation for more information on Course Access Settings.

  5. Optional: Update the “Course Content” settings.

    In the Display and Content Options screen within LearnDash Settings, select “Only visible to enrollees”. Refer to the LearnDash documentation for more information on Course Display & Content Settings.

Video Demo: Restrict a LearnDash Course with PMPro

Managing Course Access and Enrollment

If a user viewing your course does not have the correct membership level, they will see the protected content message as specified in the Memberships > Settings > Advanced area of your WordPress admin.

When a new member completes checkout, they are automatically enrolled into all courses for their level. If a member changes their level, they also become unenrolled from any courses not offered for their new level.

Existing Course Enrollments

This Add On does not include any update scripts to manage course enrollment for existing members. All members who have an existing membership level will not be automatically enrolled in a course once you add protection.

Course protection and enrollment is hooked in the level change event: only new members or members that cancel or change their level will be updated.

  • You must manually add current members to newly protected courses
  • You must manually remove enrolled users that do not have the correct membership level for access.

Note: LearnDash offers their own native integration for PMPro. Refer to the plugin information page for more details on the Paid Memberships Pro integration for LearnDash.

Last updated on May 15, 2026


Was this article helpful?
YesNo