LifterLMS Version 10.1.0

Posted in
New Features
  • Added WordPress Abilities API (WP 6.9+) integration, registering the LifterLMS REST API endpoints for courses, sections, lessons, memberships, access plans, students, enrollments, and student progress as discoverable abilities for AI clients and automation tools.
  • Added a Quizzes subtab to the single course reporting view.
  • Added wp llms course enrollments <id> command to list students enrolled in a specific course.
  • Added AI agent usage guide (docs/ai-agents.md) for CLI with patterns for Claude Code, Cursor, Codex, and similar tools.
  • Added wp llms course content <id> command to retrieve course structure (sections and lessons) in a single call.
  • Added course and membership selection to the Pricing Table block. #3239
  • Added a HelpScout help beacon to the LifterLMS admin screens.
  • Lesson time tracking and minimum time required on lesson enforcement.
  • Added an accessible expand control on quiz attempt results so students can discover answer details and clarifications.
Updates and Enhancements
  • Adding quiz ID to the lesson listing in the Course Builder. #3024
  • Bundled lifterlms-blocks, lifterlms-cli, lifterlms-helper, lifterlms-rest, and banner-notifications directly into core; standalone copies are no longer released separately.
  • Limited the pricing table to a maximum of 3 access plan columns per row, using 2 columns when there are exactly 4 plans. #3288
  • Added the wp-element-button class to front-end buttons (pricing tables, checkout, registration, quizzes, dashboard, certificates) so they inherit theme button styling.
  • Increased the voucher admin “Uses” field width so redemption counts with more than two digits are readable.
Bug Fixes
  • Fixed media library attachment detail screen incorrectly showing course-protected files as protected by an assignment submission.
  • Fixed media protection URL rewrite failing when a persistent object cache is enabled. Thanks @faisalahammad!
  • Added ABSPATH direct file access protection guards. Thanks @faisalahammad!
  • Switched the “Add New Plan” access plan dialog to full screen in the editor.
  • Fixed course titles showing HTML character codes in block settings. #3239
  • Made the course selection dropdown in course blocks searchable. #3239
  • Fixed reporting stat tiles becoming misaligned depending on the number and height of tiles shown.
  • Fixed course, section, lesson, and quiz titles containing quotes or HTML characters displaying incorrectly in the course builder.
  • Fixed the appearance of the custom fields notice on the forms screen under WordPress 7.0. #3161
  • Fixed the parent course lookup when setting up lesson data. Thanks @soydiloreto! #3230
  • Fixed multi-line quiz question spacing and accessibility on the front end. #3286
  • Fixed LifterLMS buttons in the block editor preview inheriting WordPress admin button styles instead of theme button styles.
Developer Notes
  • Corrected the docblocks for get_course() and get_lesson() so the documented $the_course/$the_lesson and $args parameters match the LLMS_Course and LLMS_Lesson constructors they forward to. #2175
Security Fixes
  • Additional checks on content restriction in feeds.
  • Hardened database queries in the voucher and lesson handler classes.
  • Improved redirect handling in content restriction and lesson completion.
  • Improved redirect handling in the template loader and lesson progression controller.
Updated Templates