Release Notes

LifterLMS Version 3.31.0

Updates
  • Tested to WordPress 5.2
  • Adds explicit support for the twentynineteen default theme.
  • The main students reporting table can now be filtered to show only students enrolled in a specific course or membership.
  • Resolve conflict with WooCommerce (3.6 and later) resulting in 404s on the dashboard endpoints “lost password”, “order history”, and “edit account”.
  • Adds a dynamic filter (llms_notification_view{$trigger_id}_basic_options) to basic (pop-over) notifications to allow configuration of their settings.
  • The filter llms_plan_get_checkout_url now passes a 3rd parameter: $check_availability
  • Improves LLMS_Course_Data and LLMS_Quiz_Data classes by adding shared functionality to a shared abstract, LLMS_Abstract_Post_Data
  • Changed access on class methods in LLMS_Shortcode_Courses from private to protected, thanks @andrewvaughan!
Bug fixes
  • Treats post_excerpt data as HTML instead of plain text. Fixes an issue resulting in HTML tags being stripped from lesson excerpts when duplicating a lesson in the course builder or importing lessons via the course importer.
  • Fix an issue allowing access plan sales prices to be set as negative values.
LifterLMS Blocks
  • Updated to LifterLMS Blocks 1.4.0.
  • Adds an “unmigration” utility to LifterLMS -> Status -> Tools & Utilities which can be used to remove LifterLMS blocks from courses and lessons which were migrated to the block editor structure.
  • This tool is only available when the Classic Editor plugin is installed and enabled and it will remove blocks from ALL courses and lessons regardless of whether or not the block editor is being utilized on that post.
Deprecations
  • LLMS_Query::add_query_vars() use LLMS_Query::set_query_vars() instead.

LifterLMS WooCommerce Version 2.0.10

  • Fixed an issue causing fatal errors encountered during admin panel updates of subscriptions with no parent order.
  • Resolve LifterLMS Student Dashboard lost password 404s by redirecting links to the LifterLMS lost password endpoint to the WooCommerce My Account lost password endpoint.
  • Outputs CSS and JS related to course/membership expiration in the admin subscriptions management area so it looks and functions on subscriptions like it does on orders.

LifterLMS Version 3.31.0-beta.2

  • The main students reporting table can now be filtered to show only students enrolled in a specific course or membership.
  • Improves LLMS_Course_Data and LLMS_Quiz_Data classes by adding shared functionality to a shared abstract, LLMS_Abstract_Post_Data
  • The filter llms_plan_get_checkout_url no passes a 3rd parameter: $check_availability
  • Changed access on class methods in LLMS_Shortcode_Courses from private to protected, thanks @andrewvaughan!

LifterLMS Version 3.31.0-beta.1

  • Adds explicit support for the twentynineteen default theme.

  • Treats post_excerpt data as HTML instead of plain text. Fixes an issue resulting in HTML tags being stripped from lesson excerpts when duplicating a lesson in the course builder or importing lessons via the course importer.

  • Update to LifterLMS Blocks 1.4.0:

  • Adds an “unmigration” utility to LifterLMS -> Status -> Tools & Utilities which can be used to remove LifterLMS blocks from courses and lessons which were migrated to the block editor structure.

  • This tool is only available when the Classic Editor plugin is installed and enabled and it will remove blocks from ALL courses and lessons regardless of whether or not the block editor is being utilized on that post.

LifterLMS Blocks Version 1.4.0

  • Added an “unmigration” utility to LifterLMS -> Status -> Tools & Utilities which can be used to remove LifterLMS blocks from courses and lessons which were migrated to the block editor structure. This tool is only available when the Classic Editor plugin is installed and enabled and it will remove blocks from ALL courses and lessons regardless of whether or not the block editor is being utilized on that post.

LifterLMS Version 3.30.3

Updates
  • Fixed typos and spelling errors in various strings.
  • Corrected a typo in the content-disposition header used when exporting voucher CSVs, thanks @pondermatic!
  • Improved the quiz attempt grading experience by automatically focusing the remarks field and only toggling the first answer if it’s not visible, thanks @eri-trabiccolo!
  • Removed commented out code on the Student Dashboard Notifications Tab template, thanks @tnorthcutt!
Bug Fixes
  • Renamed “descrpition” key to “description” found in the return of LLMS_Instructor()->toArray().
  • Fixed an issue causing slashes to be stripped from course content when cloning a course.
  • Fixed an issue causing JS warnings to be thrown in the Javascript console on Course and Membership edit pages on the admin panel due to variables being defined too late, thanks @eri-trabiccolo!
  • Fixed an undefined variable notice encountered when filtering quiz attempts on the quiz attempts reporting screen, thanks @eri-trabiccolo!
  • Fixed an issue causing slashes to appear before quotation marks when saving remarks on a quiz attempt, thanks @eri-trabiccolo!
  • @pondermatic fixed typos and misspellings in comment and docs in over 200 files and while that doesn’t concern most users it’s worthy of a mention.
Deprecations

The following unused classes have been marked as deprecated and will be removed from LifterLMS in the next major release.

  • LLMS\Users\User
  • LLMS_Analytics_Page
  • LLMS_Course_Basic
  • LLMS_Lesson_Basic
  • LLMS_Quiz_Legacy
Template Updates

LifterLMS Version 3.30.2

  • Added new filter to allow 3rd parties to determine if a LLMS_Post_Model field should be added to the custom array when converting the post to an array.
  • Added hooks and filters to the LLMS_Generator class to allow 3rd parties to easily generate content during course clone and import operations.
  • Fixed an issue causing all available courses to display when the [lifterlms_courses] shortcode is used with the “mine” parameter and the current user viewing the shortcode is not enrolled in any courses.
  • Fixed a PHP undefined variable warning present on the payment confirmation screen.