LifterLMS

LifterLMS Version 5.5.0

New Features
  • Includes the LLMS-CLI beta, a set of WP-CLI commands for LifterLMS and LifterLMS add-ons, as part of the core plugin:
  • To get started, run wp llms --help in your terminal or read the online command documentation.
  • Please note that the LLMS-CLI is included as a public beta feature. The command API is in a pre-release state and, as such, is subject to change without warning.
  • If you encounter any issues or wish to provide feedback on the LLMS-CLI please get in touch at https://github.com/gocodebox/lifterlms-cli.
Bug Fixes
  • Fix AJAX post search when using search queries containing quotes.
Deprecations
  • The lifterlms_register_post_type_llms_engagement is deprecated in favor of lifterlms_register_post_type_engagement.
  • The lifterlms_register_post_type_llms_achievement is deprecated in favor of lifterlms_register_post_type_achievement.
  • The lifterlms_register_post_type_llms_certificate is deprecated in favor of lifterlms_register_post_type_certificate.
  • The lifterlms_register_post_type_llms_my_certificate is deprecated in favor of lifterlms_register_post_type_my_certificate.
  • The lifterlms_register_post_type_llms_email is deprecated in favor of lifterlms_register_post_type_email.
  • The lifterlms_register_post_type_llms_coupon is deprecated in favor of lifterlms_register_post_type_coupon.
  • The lifterlms_register_post_type_llms_voucher is deprecated in favor of lifterlms_register_post_type_voucher.
Developer Notes
  • The llms-addons style asset no longer ships an unminified version.
  • The llms-admin-add-ons style asset no longer ships an unminified version and the filename of the distributed file has changed.
  • All the LifterLMS post types are now registered using the static method LLMS_Post_Types::register_post_type().
  • Upgraded woocommerce/action-scheduler to v3.4.0.

LifterLMS Version 5.4.1

Bug fixes
  • Exclude internal-use-only properties (related to reporting caches and student counts) when exporting or cloning courses. #1532
  • Don’t sanitize input from user forms until validation has succeeded. #1829
  • Fixed an issue encountered when fields are removed from reusable blocks, causing some user forms from functioning as expected. #1832

LifterLMS Version 5.4.0

Updates
  • Added logic to prevent the permanent deletion of courses or memberships with active subscriptions.
  • When a subscription attempts to charge a recurring payment against a deleted course or membership the transaction will be cancelled and the order marked as failed.
  • Updates LifterLMS Blocks to v2.2.1.
  • Updates LifterLMS REST to v1.0.0-beta.20.
Bug fixes
  • Fixed issue encountered when cloning lessons with attached assignments.
  • Fixed an error encountered when viewing an order for a deleted course or membership on the student dashboard.
Templates Updated
  • templates/myaccount/view-order.php

LifterLMS Version 5.3.3

Updates
  • Update woocommerce/actions-scheduler to version 3.3.0.
Bug fixes
  • Fixed an issue causing the latest earned achievement to not display on the “My Grades” tab in certain scenarios.
  • Fix issue causing a waiting... message to display on the JS dev console.
  • Fix improper usage of apply_filters_deprecated() encountered when using deprecated theme settings filters in the course builder.
  • Fixed missing text domain, thanks chetansatasiya!
Developer notes
  • Improved the LLMS.waitFor() runtime JS dependency loader to output improved debugging information.

LifterLMS Version 5.3.2

Updates
  • Updated the SendWP integration account management URL.
Bug fixes
  • Fixed issue encountered with TinyMCE editor instances in repeater metabox groups.
  • Fixed issue causing the latest achievement to not display when reviewing grades on the student dashboard.

LifterLMS Version 5.3.1

Bug fixes
  • Fixed quote slashing for non-admin roles when editing content in the course builder.
  • The LifterLMS admin icon now uses an encoded SVG to improve admin color scheme compatibility.
  • Fixed an issue with empty admin notices.
Dev updates
  • The creation date of llms_orders is now determined by llms_current_time().

LifterLMS Version 5.3.0

Updates
  • Improved logic used to determine when a limited length subscription has completed its payment schedule.
  • Improved accessibility of various icon buttons on the admin orders view/edit screen.
  • Improved display of quiz attempts containing questions which have been deleted from the database.
  • POT files from included library plugins (like LifterLMS REST) are now excluded from LifterLMS distributions.
Development updates
  • Introduced LLMS_Trait_Singleton to replace redundant singleton pattern definitions across classes in the codebase.
  • Moveed the loading of the autoloader to the main lifterlms.php file.
  • Updated the LLMS_Payment_Gateway abstract class to utilize LLMS_Abstract_Options_Data for accessing gateway options.
  • Audio and video embed methods shared by LLMS_Course and LLMS_Membership have been relocated to LLMS_Trait_Audio_Video_Embed.
  • Sales page methods shared by LLMS_Course and LLMS_Membership have been relocated to LLMS_Trait_Sales_Page.
Bug Fixes
  • Fixed a visual issue encountered on the payment confirmation screen on small screens / mobile devices.
  • Fix untranslatable time period strings (day, week, month, and year) found on the admin orders view/edit screen.
  • Fixed an error encountered when attempting to grade a quiz attempt containing deleted questions.
Deprecations
  • Removed usage and references to the LLMS_Order post meta property date_billing_end. To determine if a subscription has ended, use LLMS_Order::get_remaining_payments() instead.
  • Removed private method LLMS_Order::calculate_billing_end_date().
  • Deprecated the class property $_instance from the following classes, use the public method instance() instead:
  • LLMS_Achievements
  • LLMS_Certificates
  • LLMS_Emails
  • LLMS_Engagements
  • LLMS_Events
  • LLMS_Grades
  • LLMS_Integrations
  • LLMS_Notifications
  • LLMS_Payment_Gateways
  • LLMS_Processors
  • LLMS_Sessions
Templates Updated
  • templates/checkout/form-confirm-payment.php
  • templates/admin/reporting/tabs/quizzes/attempt.php
  • templates/quiz/results-attempt-questions-list.php

LifterLMS Version 5.2.0

Upcoming Payment Reminder Notification
  • A new notification, the “Upcoming Payment Reminder” notification has been added. This notification sends a reminder to students a configurable number of days before a payment is do for a recurring subscription.
  • When upgrading to version 5.2.0, this notification will be automatically disabled, visit LifterLMS -> Settings -> Notifications and select the new notification to enable it after upgrading.
  • Props to @niluzok for doing the initial work required to build this notification!
Updates
  • Reworked the database upgrader script to allow for minor upgrades which don’t require significant data migration to upgrade silently without requiring user consent to initiate.
  • Improved internal methods used to generate tables in the body of email notifications.
Bug Fixes
  • Student registration date is now displayed in the site’s timezone in favor of UTC time.
  • Properly pass options template_path and default_path to the template handler when creating an admin notice using a template.
  • Removed translation (and incorrect text domain) from a logging function encountered when a recurring payment errors as a result of the payment gateway having been deactivated.
Deprecations
  • LLMS_Install::db_updates() is deprecated, use `LLMS_DB_Upgrader::enqueue_updates() instead.
  • LLMS_Install::update_notice() is deprecated with no replacement.
  • Template admin/notices/db-update.php is deprecated in favor of includes/admin/views/db-update.php.
  • Template admin/notices/db-updating.php is deprecated with no replacement.