Today we’re making Sensei LMS Certificates 2.0.4 available on WordPress.org! This is a small release to make the extension compatible with deploying to the plugin directory. We’ve also made a minor change to rename it from Sensei Certificates to Sensei LMS Certificates.
Despite this being a small release, there are still a few changes that developers need to be aware of.
Template File Change
templates/single-certificate_template.php – Added escaping for wp_die function call.
Today we’re releasing Sensei LMS 3.0 and WooCommerce Paid Courses 2.0. These are both major releases that overhaul course access and simplify the rules for adding and removing access for learners.
Sensei LMS 3.0 and Sensei with WooCommerce Paid Courses 188.8.131.52.0.0 introduce the concept of course enrollments. When updating to the new version, a migration job will run that enrolls existing learners in courses. This means that any learner who is listed in Learner Management for a particular course prior to the migration will be enrolled in that same course after the migration.
Note: As this is a major release that affects course access, we strongly recommend that you test the update on a staging site before updating your live site. We also recommend that you take a backup of your live site prior to updating.
For sites running Sensei LMS + Sensei with WooCommerce Paid Courses: For sites that are running both Sensei LMS and Sensei with WooCommerce Paid Courses, we strongly recommend updating Sensei with WooCommerce Paid Courses first, followed by Sensei LMS. Updating Sensei LMS first would mean that learners would not have access until Sensei with WooCommerce Paid Courses was also updated.
Course enrollments make it possible to separate course progress from course access. This means that a learner can be unenrolled from a course while still keeping their existing progress intact. If that learner later re-enrolls in the course, they can continue from where they left off.
Learners can be removed from a course by clicking Remove manual enrollment or re-enrolled by clicking Manually enroll learner:
WooCommerce Paid Courses
For paid courses, there is an important distinction between learners who were enrolled in a course because they purchased it, and those who were manually enrolled by an admin or teacher (i.e. a teacher or admin added the learner to the course even though they did not purchase it). There is a filter on the Learner Management page that can be used to view only those learners who were manually enrolled:
Special Considerations for WooCommerce Memberships
Migrating Active Memberships with Cancelled Orders
For those using WooCommerce Memberships to grant access to courses, you may see the following notice after upgrading:
In previous versions of Sensei with WooCommerce Paid Courses, a learner with an active membership and a cancelled order was not given access to the membership’s courses. This behaviour may be contrary to what you would expect, so as of Sensei with WooCommerce Paid Courses 184.108.40.206.0.0, all learners with an active membership and a cancelled order will have access to the membership’s courses. If you would like to change this behaviour for existing memberships, click the View Active Memberships with Cancelled Orders button and change the status of the memberships on that page to Cancelled.
Migrating Inactive Memberships
The default enrollment migration behaviour for learners who were granted access to a course via a membership is to enroll any learner who is listed in Learner Management for a particular course, regardless of the status of their membership. This means that learners with memberships that are paused, expired, or cancelled, but who had access to the course(s) associated with that membership prior to the migration, will still be enrolled in and have access to the course(s) after the migration.
If this is not the behaviour you desire, and would prefer NOT to enroll learners in courses if their associated membership is paused, expired, or cancelled, then please follow these instructions before updating to Sensei with WooCommerce Paid Courses 220.127.116.11.0.0. It’s important to be aware that this will remove access to courses for learners with memberships that are paused, expired, or cancelled:
Today we’re releasing Sensei LMS 3.0 Beta 4 and WooCommerce Paid Courses 2.0 Beta 4, which we are hopeful will be the final beta prior to the production release.
We hope that the fact that we’ve released 4 betas helps to highlight the importance and size of this release, and encourages everyone to do some testing on their staging sites before updating their live sites.
Sensei LMS 3.0
Here’s what’s new in Beta 4:
Add multisite support for course enrolments.
Delete provider journal data when plugin is uninstalled.
Display a notice to remind admins to upgrade WooCommerce Paid Courses to 2.0 for sites that are running Sensei LMS 3.0 and Sensei with WooCommerce Paid Courses 1.x. For sites running both plugins, we strongly recommend updating Sensei with WooCommerce Paid Courses before Sensei LMS.
Made a change to use an unfiltered method when checking whether or not a learner has started a course. This change will impact sites with code customizations that leverage the sensei_user_started_course filter, and means that this filter should no longer be relied on to provide access to a course. If you are currently doing so, please consider either switching to a custom enrolment provider (example here), or leveraging hooks in the relevant third-party plugin (i.e. WooCommerce, WooCommerce Subscriptions or WooCommerce Memberships).
We renamed the sensei_wc_paid_courses_migration_ended_memberships_provide_manual_enrolmentfilter introduced in Beta 3 to sensei_wc_paid_courses_migration_inactive_memberships_provide_manual_enrolment, and simplified its logic such that it will block users with inactive memberships from being manually enrolled when the migration runs, regardless of the status of the associated order.
As always, please test the beta release on a staging site and not your live site. If you don’t have a staging site, you can use the WP Staging plugin to create one.
If you’ve already tested a previous beta on your staging site, you should take the following steps prior to testing Beta 4:
Deactivate and delete the older beta versions of Sensei LMS.
Restore the database backup for your staging site.
Download Beta 4 and unzip it to your wp-content/plugins folder. You can choose to either override your existing folder, or rename it to something else before unzipping, if applicable.
Activate Sensei LMS 3.0.0 Beta 4.
The above steps are necessary to ensure the course enrolment migration process executes again. If you haven’t tested any of the beta releases prior to this, there’s no need to restore a database backup.
Please note that the release date has been moved to April 27th, 2020, which will allow for time to test Beta 4 prior to release. Feel free to leave a comment on this post if you find any issues while testing our latest beta.
Sensei Content Drip 2.0.2 has been released and includes the following changes:
In anticipation of the upcoming Sensei LMS 3.0 release, we’ve made a change to ensure that drip emails are only sent to learners who are actually enrolled in a particular course. For sites on older versions of Sensei LMS, drip emails remain unchanged.
Fixed a bug that did not allow Admin users to view lessons whose availability date had not yet come.
To install this update on your site, head on over to Dashboard → Updates now!