The Official Blog for LifterLMS Contributors

  • LifterLMS Version 3.41.1

    • Apply restrictions to post content and excerpts during WP REST requests.
    Read more: LifterLMS Version 3.41.1
  • LifterLMS REST API Version 1.0.0-beta.13

    • Bugfix: Fixed error response messages on the instructors endpoint.
    • Bugfix: Fixed student progress deletion endpoint issues preventing progress from being fully removed.
    Read more: LifterLMS REST API Version 1.0.0-beta.13
  • LifterLMS Version 4.0.0-rc.1

    Version 4.0.0 Release Candidate

    No additional API changes will be made prior to the release of 4.0.0 on the stable channel.

    The expected stable release of 4.0.0 is Thursday, June 25, 2020.

    Action Scheduler Library

    Switches from prospress/action-scheduler to woocommerce/action-scheduler. The repository has been moved but it’s the same library & upgrades to latest version (3.1.6).

    While this is a semantically major upgrade of the library there are no backwards incompatible changes to the public API.

    There have been several deprecated functions/classes. The LifterLMS core does not directly use any of these deprecated functions but 3rd parties might and should review the changelog of the library to see if they are affected by any deprecations: https://github.com/woocommerce/action-scheduler/releases.

    Deprecations
    • Function LLMS() is deprecated in favor of llms().
    Templates Modified
    • templates/global/form-login.php
    • templates/global/form-registration.php
    Miscellaneous Breaking Changes

    WP Session Manager Library

    Removes the bundled WP Session Manager plugin dependency, all public methods included with this plugin have been removed without direct replacements.

    Removed JS dependencies

    Removes bundled JS bootstrap 3 dependencies: “collapse” and “transition”

    Removed CSS Classes

    Removes classnames from student dashboard login and registration form wrapper elements which conflict with bootstrap causing visual issues.

    These classes are not used by the LifterLMS core or add-ons and are a legacy class that hasn’t been removed for fear of creating backwards compatibility issues with any custom css, 3rd party themes, etc…

    • templates/global/form-login.php: Removes col-1 class from the div.llms-person-login-form-wrapper element.
    • templates/global/form-registration.php: : Removes col-2 class from the div.llms-new-person-form-wrapper element.
    Previously deprecated classes (and files) that have been removed
    • LLMS_Admin_Analytics: includes/admin/class.llms.admin.analytics.php
    • LLMS_Analytics: includes/class.llms.analytics.php
    • LLMS_Analytics_Courses: includes/admin/analytics/class.llms.analytics.courses.php
    • LLMS_Analytics_Memberships: includes/admin/analytics/class.llms.analytics.memberships.php
    • LLMS_Analytics_Page: includes/admin/analytics/class.llms.analytics.page.php
    • LLMS_Analytics_Sales: includes/admin/analytics/class.llms.analytics.sales.php
    • LLMS_Course_Basic: includes/class.llms.course.basic.php
    • LLMS_Course_Handler: includes/class.llms.course.handler.php
    • LLMS_Course_Factory: includes/class.llms.course.factory.php
    • LLMS_Lesson_Basic: includes/class.llms.lesson.basic.php
    • LLMS_Meta_Box_Expiration: includes/admin/post-types/meta-boxes/class.llms.meta.box.expiration.php
    • LLMS_Meta_Box_Video: includes/admin/post-types/meta-boxes/class.llms.meta.box.video.php
    • LLMS_Number: includes/class.llms.number.php
    • LLMS_Person: includes/class.llms.person.php
    • LLMS_Quiz_Legacy: includes/class.llms.quiz.legacy.php
    • LLMS_Table_Questions: includes/admin/reporting/tables/llms.table.questions.php
    • LLMS\Users\User: includes/Users/User.php
    Previously deprecated class properties that have been removed
    • LifterLMS->person (generally accessed via LLMS()->person).
    • LLMS_Analytics_Widget->date_end
    • LLMS_Analytics_Widget->date_start
    • LLMS_Analytics_Widget->output
    • LLMS_Certificate->enabled
    • LLMS_Course_Data->$course
    • LLMS_Course_Data->$course_id
    Previously deprecated class methods that have been removed:
    • LLMS_Admin_Table::queue_export()
    • LLMS_AJAX::get_achievements()
    • LLMS_AJAX::get_all_posts()
    • LLMS_AJAX::get_associated_lessons()
    • LLMS_AJAX::get_certificates()
    • LLMS_AJAX::get_courses()
    • LLMS_AJAX::get_course_tracks()
    • LLMS_AJAX::get_emails()
    • LLMS_AJAX::get_enrolled_students()
    • LLMS_AJAX::get_enrolled_students_ids()
    • LLMS_AJAX::get_lesson()
    • LLMS_AJAX::get_lessons()
    • LLMS_AJAX::get_lessons_alt()
    • LLMS_AJAX::get_memberships()
    • LLMS_AJAX::get_question()
    • LLMS_AJAX::get_sections()
    • LLMS_AJAX::get_sections_alt()
    • LLMS_AJAX::get_students()
    • LLMS_AJAX::update_syllabus()
    • LLMS_Course::get_children_sections()
    • LLMS_Course::get_children_lessons()
    • LLMS_Course::get_author()
    • LLMS_Course::get_author_id()
    • LLMS_Course::get_author_name()
    • LLMS_Course::get_sku()
    • LLMS_Course::get_id()
    • LLMS_Course::get_title()
    • LLMS_Course::get_permalink()
    • LLMS_Course::get_user_postmeta_data()
    • LLMS_Course::get_user_postmetas_by_key()
    • LLMS_Course::get_checkout_url()
    • LLMS_Course::get_start_date()
    • LLMS_Course::get_end_date()
    • LLMS_Course::get_next_uncompleted_lesson()
    • LLMS_Course::get_lesson_ids()
    • LLMS_Course::get_syllabus_sections()
    • LLMS_Course::get_short_description()
    • LLMS_Course::get_syllabus()
    • LLMS_Course::get_user_enroll_date()
    • LLMS_Course::get_user_post_data()
    • LLMS_Course::check_enrollment()
    • LLMS_Course::is_user_enrolled()
    • LLMS_Course::get_student_progress()
    • LLMS_Course::get_membership_link()
    • LLMS_Lesson::get_assigned_quiz()
    • LLMS_Lesson::get_drip_days()
    • LLMS_Lesson::mark_complete()
    • LLMS_PlayNice::divi_fb_wc_product_tabs_after()
    • LLMS_PlayNice::divi_fb_wc_product_tabs_before()
    • LLMS_PlayNice::wc_is_account_page()
    • LLMS_Post_Instructors::get_defaults()
    • LLMS_Query::set_dashboard_pagination()
    • LLMS_Query::add_query_vars()
    • LLMS_Question::get_correct_option()
    • LLMS_Question::get_correct_option_key()
    • LLMS_Question::get_options()
    • LLMS_Quiz::get_assoc_lesson()
    • LLMS_Quiz::get_passing_percent()
    • LLMS_Quiz::get_remaining_attempts_by_user()
    • LLMS_Quiz::get_time_limit()
    • LLMS_Quiz::get_total_allowed_attempts()
    • LLMS_Quiz::get_total_attempts_by_user()
    • LLMS_Quiz_Attempt::get_status()
    • LLMS_Shortcode_My_Account::lost_password()
    • LLMS_Section::count_children_lessons()
    • LLMS_Section::delete()
    • LLMS_Section::get_children_lessons()
    • LLMS_Section::remove_all_child_lessons()
    • LLMS_Section::remove_child_lesson()
    • LLMS_Section::set_order()
    • LLMS_Section::set_title()
    • LLMS_Section::update()
    • LLMS_Session::init()
    • LLMS_Session::maybe_start_session()
    • LLMS_Session::set_expiration_variant_time()
    • LLMS_Session::set_expiration_time()
    • LLMS_Session::use_php_sessions()
    • LLMS_Student::delete_quiz_attempt()
    • LLMS_Student::get_best_quiz_attempt()
    • LLMS_Student::get_quiz_data()
    • LLMS_Student::has_access()
    • LLMS_Student_Dashboard::output_courses_content()
    • LLMS_Student_Dashboard::output_dashboard_content()
    • LLMS_Student_Dashboard::output_notifications_content()
    • LLMS_Widget_Course_Progress::widget_contents()
    Previously deprecated functions that have been removed
    • is_filtered()
    • lifterlms_template_loop_view_link()
    • llms_add_user_table_columns()
    • llms_add_user_table_rows()
    • llms_create_new_person()
    • llms_get_question()
    • llms_get_quiz()
    • llms_set_user_password_rest_key()
    • llms_setup_product_data()
    • llms_setup_question_data()
    • llms_verify_password_reset_key()
    Previously deprecated hooks that have been removed
    • Action: lifterlms_before_memberships_loop_item_title
    • Action: lifterlms_after_memberships_loop_item_title
    • Action: lifterlms_after_memberships_loop_item_title
    • Filter: lifterlms_completed_transaction_message
    • Filter: lifterlms_is_filtered
    • Filter: lifterlms_get_analytics_pages
    • Filter: lifterlms_analytics_tabs_array
    Previously deprecated shortcodes that have been removed
    • [courses]
    • [lifterlms_user_statistics]
    Previously deprecated templates that have been removed
    • templates/loop/view-link.php
    Previously deprecated global variables that have been removed
    • $product
    • $question
    Read more: LifterLMS Version 4.0.0-rc.1
  • LifterLMS Advanced Videos Version 1.0.0-beta.10

    • Fixed issue causing video progress to be lost when exiting the page while a video is playing.
    • Fixed an error encountered when clicking the track bar using a mouse.
    Read more: LifterLMS Advanced Videos Version 1.0.0-beta.10
  • LifterLMS WooCommerce Version 2.1.0

    • The LifterLMS Core minimum required version has been raised to version 3.26.3.
    • Adds compatibility for LifterLMS Social Learning.
    • Fixes a compatibility issue encountered when using the BuddyBoss theme.
    • Removes usage of a LifterLMS core deprecated function.
    Read more: LifterLMS WooCommerce Version 2.1.0
  • LifterLMS Version 3.41.0

    Bug Fixes
    • Fix issues encountered when a user role with the edit_users capability has multiple LifterLMS roles (like Student).
    LifterLMS 4.0.0 Release Preparation

    LifterLMS 4.0.0, our first major release in several years, is nearing the end of it’s beta testing cycle. Many unused legacy functions, classes, and files are being removed in version 4.0.0 and well as many functions, classes, and files that were previously deprecated.

    The following is a list of items that have not been previously deprecated but will be removed from LifterLMS 4.0.0.

    For full details on the release, information on beta testing, and more, see our blog post on the release.

    Deprecations

    The WP Session Manager plugin / library that is bundled into the LifterLMS core code base is deprecated from our code base and is being fully removed in favor of an internal session manager.

    The bundled Javascript Boostrap 3 modules, “collapse” and “transition” are deprecated from our codebase and are being removed.

    The following CSS classes are deprecated and will be removed:

    • templates/global/form-login.php: The col-1 class from the div.llms-person-login-form-wrapper element will be removed.
    • templates/global/form-registration.php: : The col-2 class from the div.llms-new-person-form-wrapper element will be removed.

    The following classes are deprecated:

    • LLMS_Number: includes/class.llms.number.php
    • LLMS_Person: includes/class.llms.person.php
    • LLMS_Table_Questions: includes/admin/reporting/tables/llms.table.questions.php

    The following class methods are deprecated:

    • LLMS_PlayNice::divi_fb_wc_product_tabs_after()
    • LLMS_PlayNice::divi_fb_wc_product_tabs_before()
    • LLMS_Question::get_correct_option()
    • LLMS_Question::get_correct_option_key()
    • LLMS_Quiz::get_passing_percent(), use LLMS_Quiz::get( 'passing_percent' ) instead.
    • LLMS_Quiz::get_assoc_lesson(), use LLMS_Quiz::get( 'lesson_id' ) instead.
    • LLMS_Session::init()
    • LLMS_Session::maybe_start_session()
    • LLMS_Session::set_expiration_variant_time()
    • LLMS_Session::set_expiration_time()
    • LLMS_Session::use_php_sessions()

    The following class properties are deprecated:

    • LifterLMS->person (generally accessed via LLMS()->person).

    The following functions are deprecated:

    • lifterlms_template_loop_view_link()
    • llms_add_user_table_columns()
    • llms_add_user_table_rows()
    • llms_get_question()
    • llms_get_quiz()
    • llms_setup_product_data()
    • llms_setup_question_data()

    The following global variables are deprecated:

    • $product
    • $question

    The following action hooks are deprecated:

    • lifterlms_before_memberships_loop_item_title
    • lifterlms_after_memberships_loop_item_title
    • lifterlms_after_memberships_loop_item_title

    The following template file is deprecated:

    • templates/loop/view-link.php
    Read more: LifterLMS Version 3.41.0