- Adds conditional support for page builders: Beaver Builder, Divi Builder, and Elementor.
- Fixed issue causing LifterLMS core sales pages from outputting automatic content (like pricing tables) on migrated posts.
- Student unenrollment calls always bypass cache during enrollment precheck.
- Membership post type “name” label is now plural (as it is supposed to be).
- Adds a filter (
llms_blocks_is_post_migrated) to allow determining if a course or lesson has been migrated to the WP 5.0 block editor.
- Added a filter (
llms_dashboard_courses_wp_query_args) to the WP_Query used to display courses on the student dashboard.
- Fixed issue on course builder causing prerequisites to not be saved when the first lesson in a course was selected as the prereq.
- Fixed issue on course builder causing lesson settings to be inaccessible without first saving the lesson to the database.
- Fixed compatibility issue with the Classic Editor plugin when it was added after a post was migrated to the new editor structure.
- Added new filters to the
- Fix issue with student dashboard login redirect causing a white screen on initial login.
- Editor blocks now display a lock icon when hovering/selecting a block which corresponds to the enrollment visibility settings of the block.
- Removal of core actions is now handled by a general migrator function instead of by individual blocks.
- Fixed issue preventing strings from the lifterlms-blocks package from being translateable.
- Fix issue causing block visibility options to not be properly set when enrollment visibility is first enabled for a block.
- Fixed compatibility issue with Yoast SEO Premium redirect manager settings, thanks @moorscode!
- Fixed typo preventing tag size options (or filters) of course information block from functioning properly. Thanks @tnorthcutt!
WordPress 5.0 Ready!
- Tested with WordPress core 5.0 (Gutenberg)!
- Editor Blocks: Course and Lesson layouts are now (preferrably) powered by various editor blocks.
- When a block is added to a course or lesson, the template hook that automatically outputs that element is removed automatically (preventing duplicates).
- If you use the LifterLMS Labs: Action Manager you may no longer need it!
- Course & Membership instructors are now managed through an editor “plugin”. Check out the rocket icon near the “Publish/Update” button.
- Instructor metabox will load conditionally based on presence of the block editor
- New courses and lessons will automatically have a preloaded block editor template
- Courses and lessons will automatically be “migrated” to these templates when edited on the admin panel
- Various course settings conditionally load based on the presence of the block editor
- Added filter to the headline size in the
course/meta-wrapper-start.phptemplate. Allows customization of headline via the “Course Information” block settings.
- If you’re not ready for WordPress 5.0 you can still upgrade LifterLMS. This release is fully functional without the block editor.
- Fixed typo in
- Fixed error occurring during activation of LaunchPad via the Add-Ons & More screen.
- Fixed issue causing quiz reporting screens to be blank for users without
- Added user email, login, url, nicename, display name, first name, and last name as fields searched when searching orders. Thanks Thanks @yojance!
- Fixed issue causing fatal errors encountered during certificate downloading caused by CSS
<link>tags existing outside of the
- Certificates downloaded by users who can see the WP Admin Bar will no longer show the admin bar on the downloaded certificate
- Fixed issue on iOS Safari causing multiple choice quiz questions to require a “long press” to be properly selected
- Fixed issue causing access plan sales to end 36m and 1s prior to end of the day on the desired sale end date. Thanks @eri-trabiccolo!
- Ensure that fallback url slugs for course & membership archives are translateable.
- Fix issue causing newline characters to be malformed on course builder description fields, resulting in
ncharacters being output in strange places.
- The shortcode
[lifterlms_hide_content]now accepts multiple IDs and can specify whether the user must belong to either all or any one of the specified memberships. Thanks @yojance!
- The action
llms_voucher_used, called when a voucher code is used, will now pass the voucher code as a 3rd parameter. Thanks @yojance!
- Fixed a typo in engagement drop creation dropdown. Thanks README1ST!
- Fixed issue causing backslash characters (
\) to be removed from course elements (sections, lessons, quizzes, and assignments) constructed in the course builder.
- Fixed an issue in the 3.16.0 database migration script that would cause migrations to get stuck as a result of malformed data saved in an invalid format.
- Added processing handlers to payment confirmation form. Fixes an issue which would allow multiple payment confirmation requests to be made (if the form was submitted multiple times before the page reloaded) resulting in duplicate charges.
“My Grades” Student Dashboard Endpoint
- A new student dashboard endpoint, “My Grades”, has been added
- The main screen displays a paginated and sortable list of all courses a student is enrolled in and outputs their progress and grade in the courses
- Students can drill into individual reporting screens for each course where specific details for each course are available for review
- Each lesson can now be assigned an individual “points” value
- When a course is graded the points assigned to each lesson will be used to calculate the value of the lesson’s grade within the overall course grade
- Lessons can also be assigned a value of “0” to allow a lesson to not count towards the overall grade of the course.
- Email notifications are now sent to a student when an instructor reviews, grades, or leaves remarks on a quiz attempt.
Test Email Notifications
- An interface and API for sending test email notifications has been added, the following notifications can now be tested:
Updates and Enhancements
- Quiz Passed & Quiz Failed notifications have new names on the admin panel (“Quizzes: Quiz Passed” & “Quizzes: Quiz Failed”)
- The default content for Quiz Passed and Quiz Failed notifications have been enhanced. If you’ve modified these you can delete your modified content to have your notifications “restored” to the improved defaults.
- Change the page title of the Student Dashboard page installed via the Setup Wizard to be “Dashboard” instead of “My Courses.” Thanks @philwp!
- In the course builder when a lesson is duplicated, the attached quiz will be duplicated as well
- Minor increase to performance in the
student_idas a parameter passed to the
- Updated all access plan templates added in 3.23.0 to ensure
ABSPATHis defined to prevent direct template access
- Remove use of deprecated
LLMS_Lessonmodels as well as in the
- Refactored the
LLMS_Section->get_percent_complete()method to utilize methods from the
- Added the ability for admin table classes to define
<tr>element CSS classes
- Admin settings pages with no settings to save (like the Notifications list) no longer display a “Save” button
- Added actions when creating, updating, and deleting records managed by
- Updated system report to include URLs to settings with URLs, adds a small speed boost to support request turn around time.
Please Rate & Review LifterLMS on WordPress.org
- Added a WordPress.org review request link to the footer of LifterLMS admin pages.
- Added a WordPress.org review request notice which displays a week after installation if the site has 50+ active students.
- Fixed issue causing HTML entity codes to display in email subject lines. Thanks @philwp!
- Fixed issue causing post cleanup functions to run queries against unsupported post types.
- Fixed typos in a handful of i18n functions so that the proper textdomain is now being used
get_option()call to unused option
lifterlms_logout_endpointwhich ran on WordPress initialization unnecessarily.
- Removed 3.21.0 fixes for iOS touch issues that are now causing iOS touch issues on quizzes.
- When an order is deleted, all order transactions will also be deleted. This does not happen until the order is deleted (transactions will remain while the order is in the trash)
- Fixed an issue causing duplicated quizzes to initially show images for question images & image choices (reorder pictures & picture choice) but the image data would not be properly saved so when returning to the builder or viewing a quiz on the frontend the images would be lost
Deprecated Functions & Methods
LLMS_Section->get_lessons( 'posts' )instead