LifterLMS Version 4.11.0

PHP 7.2 has reached its official end of life. LifterLMS aims to support only officially supported PHP versions and our goal is to drop support for PHP 7.2 by March of 2021 at which time minimum supported PHP version will be raised to 7.3. If you’re currently using PHP 7.2 please contact your host and request an upgrade to a supported PHP version as soon as possible!

Updates
  • Adds the ability to use the Instructors blocks on the membership post type. Thanks @alaa-alshamy!
  • Updated LifterLMS Blocks to Version 1.11.1.
Bug fixes
  • Fixed a PHP Notice encountered when trying to retrieve next lesson from an empty section.
Templates updated
  • templates/course/author.php

LifterLMS Version 5.0.0-alpha.1

User Information Form Builder
  • Customize all user information collection forms using the block editor for drag and drop and WYSIWYG form building.
  • Customize field labels, placeholders, descriptions and more with an easy point and click interface.
  • Determine if fields are required or optional with a simple toggle switch.
  • Update the form layout with the block editor. Reorder fields, add columns, and more with a simple drag and drop interface.
  • Remove unwanted fields with the click of a button.
User Location Information Form Fields
  • During user account creation and updates the user location fields are now locale aware ensuring that the proper terminology is used and only locale-required fields are displayed for the selected locale.
  • The “Country” field has been updated to be automatically populated with a list of countries. View the full list in the file at languages/countries.php and the filter lifterlms_countries can be used to modify the default list at runtime.
  • The “State” field on user forms has been updated to be automatically populated with a list of states (provinces or regions) for the selected country. This list of states can be found in the file at languages/states.php and the filter lifterlms_states can be used to modify the default list at runtime.
  • Both “Country” and “State” fields are now searchable dropdowns elements.
  • The lists of countries and states will be automatically updated during future releases based on information provided by GeoNames APIs.
Mergecodes everywhere via new [user] shortcode
  • TODO.
Updates
  • Email and password confirmation fields may now be made optional.
  • “User Information Options” have been largely removed in favor of determining which fields are displayed via the forms UI
  • The former “User Information Options” settings area has been renamed to “User Privacy Options”.
Bug Fixes
  • Changed the filter on return of LLMS_Person_Handler::get_password_reset_fields() from lifterlms_lost_password_fields to llms_password_reset_fields.
Development changes
  • The filter lifterlms_before_user_${action} is now triggered by do_action_ref_array() instead of do_action() allowing modification of $posted_data and $fields via hooks.
  • A number of action and filter hooks have been moved to new locations within the codebase. They will continue to function as expected (with some minor exceptions).
  • Enqueue select2 on account and checkout pages for searchable dropdowns for country & state.
Library & Vendor Updates
  • Load core libraries from new location and load WP Background Processing lib.
  • The vendor script dependency topModal.js has been removed.
Templates Updated
  • templates/global/form-login.php
  • templates/global/form-registration.php
  • templates/product/free-enroll-form.php
Deprecations

The following have been deprecated and will be removed from LifterLMS in a major update following version 5.0.0.

  • Class Method: LLMS_Person_Handler::get_available_fields() is deprecated in favor of LLMS_Forms::get_form_fields().
  • Class Method: LLMS_Person_Handler::register() is deprecated, in favor of llms_register_user().
  • Class Method: LLMS_Person_Handler::sanitize_field() (private method) is deprecated with no replacement.
  • Class Method: LLMS_Person_Handler::update() is deprecated, in favor of llms_update_user().
  • Class Method: LLMS_Person_Handler::validate_fields() is deprecated with no replacement.
  • Class Method: LLMS_Person_Handler::voucher_toggle_script() is deprecated with no replacement.
  • Filter: llms_usernames_blacklist is deprecated, use llms_usernames_blocklist instead.
  • Function: llms_get_minimum_password_strength() is deprecated with no replacement.
  • Option: lifterlms_registration_generate_username is deprecated in favor of the new method LLMS_Forms::are_usernames_enabled().
Removed Items
  • Private method LLMS_Processors::includes() has been removed.
  • Private methods LLMS_Person_Handler::fill_fields() and LLMS_Person_Handler::insert_data() were removed.

LifterLMS Version 4.10.2

PHP 7.2 has reached its official end of life. LifterLMS aims to support only officially supported PHP versions and our goal is to drop support for PHP 7.2 by March of 2021 at which time minimum supported PHP version will be raised to 7.3. If you’re currently using PHP 7.2 please contact your host and request an upgrade to a supported PHP version as soon as possible!

Updates
  • Improveed performance of llms_get_enrolled_students().
  • Refactored lesson navigation query functions.
Bug fixes
  • Fixed sorting error when sorting student reports by name.

LifterLMS Version 4.10.1

PHP 7.2 has reached its official end of life. LifterLMS aims to support only officially supported PHP versions and our goal is to drop support for PHP 7.2 by March of 2021 at which time minimum supported PHP version will be raised to 7.3. If you’re currently using PHP 7.2 please contact your host and request an upgrade to a supported PHP version as soon as possible!

Bug fixes
  • Fixed visual issues encountered on the admin Add-Ons screen.
  • Use hr.wp-header-end in favor of a second (hidden)

    to “catch” admin notices on the Add-Ons screen.

  • Replace incorrect usage of invalid ID llms_shop with courses during catalog template loader checks.
  • Function llms_get_post() will now only allow instantiation of LifterLMS classes.
  • Remove unneeded require autoloaded file includes/class.llms.quiz.data.php.