One common question among LearnDash users integrating Memberium and Keap (formerly Infusionsoft) is how to revoke course access the moment a student’s tags are removed. Some users have noticed that if a student is logged in before their tags are removed, they continue to have access until they manually log out. This can be an issue, especially for subscription-based courses or paid memberships.
If you’re facing this issue, here’s how you can ensure that access is revoked immediately and how to customize the user experience when access is removed.
Step 1: Setting Up Membership Levels and Tags
To properly control access, you need to set up membership levels and tags in Memberium and Keap:
- Assign membership levels to users based on their course access.
- Create the following tags in Keap:
- Auto-Enroll Tag – Automatically enrolls users in the course when they purchase.
- Cancellation Tag – Applied when a user cancels their membership.
- Suspension Tag – Applied when a payment fails or membership is paused.
Step 2: Testing Access Removal
In this example, I have a test user who has access to:
- A free course
- A paid course (associated with a paid membership level)
When I log in as this user, I can access both courses without any issues.
Applying the Suspension Tag
To test access removal:
- Apply the suspension tag to the user in Keap.
- Refresh the course page.
- At this stage, the user may still have access if their membership level tag hasn’t been removed.
Removing the Membership Level Tag
To fully revoke access:
- Remove the membership level tag associated with the course.
- Refresh the page again.
Now, the user is no longer enrolled in the course. The course page will:
- Display a “Take This Course” button instead of allowing access.
- Lock course content behind a paywall.
- Retain the user’s progress history in case they rejoin later.
Step 3: Hiding Course Content for Non-Enrolled Users
If you want to completely hide course content when a user loses access:
- Go to the Course Settings in LearnDash.
- Enable “Only Visible to Enrolled Users.”
- Refresh the page.
Now, non-enrolled users won’t see any course content. Instead, you can display:
- A message explaining why they no longer have access.
- A sales page encouraging re-enrollment.
Step 4: Removing Course Progress (Optional)
By default, LearnDash retains user progress even after they lose access. This is helpful for subscription-based courses where users may rejoin later. However, if you want to completely reset their progress:
- Go to the Course Page → Settings.
- Under User Progress, uncheck the option to retain progress.
- Save the changes.
Now, when a user loses access, their progress is reset.
Step 5: Ensuring Immediate Logout (Admin Controls)
One concern is that users who stay logged in may retain access even after their membership tags are removed. While Memberium automatically handles access based on tags, you can force logout for all users by:
- Going to WordPress Admin → Memberium Settings.
- Enabling “Enforce Instant Logout on Tag Removal.”
- Saving the changes.
This ensures that when a tag is removed, the user is logged out instantly, preventing any further access.
Bonus Tip: Customizing the User Experience
Instead of showing the default LearnDash course grid, you can:
- Create a custom course grid using Elementor or JetEngine.
- Display different banners based on user access (e.g., “Access Revoked” message).
- Show dynamic messages for suspended users encouraging them to resubscribe.
Conclusion
By properly setting up membership levels, tags, and LearnDash settings, you can instantly revoke access when a user’s subscription expires. The key steps include:
- Applying the Suspension Tag when payment fails.
- Removing the Membership Level Tag to cut off access.
- Setting courses to only show content to enrolled users.
- Forcing instant logout when tags are removed.
With these steps in place, you can maintain control over your course access and improve the user experience for both active and former students.
Have any questions or need further assistance? Let me know in the comments! 🚀
Tools & Plugins that used
- Memberium
- LearnDash