- Fix file load paths in OptimizePress plugin compatibility function
- Fixed bug causing
select2multi-selects from functioning as multi-selects
- Fixed visual issue with
select2elements being set without a width causing them to be both too small and too large in various scenarios.
- Fixed duplicate action on dashboard section template
Updates and enhancements
- Bulk enroll multiple users into a course or membership from the Users table on your admin panel. See how at https://lifterlms.com/docs/student-bulk-enrollment/
- Added event on builder to allow integrations to run trigger events when course elements are saved
- Added general redirect method
llms_redirect_and_exit()which is a wrapper for
wp_safe_redirect()which can be plugged (and tested via phpunit)
- Added new action called before validation occurs for a user account update form submission:
- Removed placeholders from form fields. Fixes a UX issue causing registration forms to appear cluttered due to having both placeholders and labels.
- Fixed issue allowing nonce checks to be bypassed on login and registration forms
- Fixed issue causing a PHP notice if the registration form is submitted without an email address and automatic username generation is enabled
- Fixed issue preventing email addresses with the “‘” character from being able to register, login, or update account information
- Fixed typo in automatic username generation filter
- Fixed issue causing admin panel static assets to have a double slash (//) in the assest URI path
- FIxed issue allowing users with
view_lifterlms_reportscapability (Instructors) to access sales & enrollment reporting screens. The
view_others_lifterlms_reportscapability (Admins & LMS Managers) is now required to view these reporting tabs.
- Updated IDs of login and registration nonces to be unique. Fixes an issue causing Chrome to throw non-unique ID warnings in the developer console. Also, IDs are supposed to be unique anyway but thanks for helping us out Google.
- Added RTL language support
- Fixed an issue preventing task deletion for a task that was added to an unsaved assignment
- Fixed issue requiring permalinks to be manually flushed after plugin installation
- Fixed an issue preventing the assignments managements sidebar on the course builder to load when adding an assignment to a course created prior to installing assignments
- Fixed an issue preventing the course builder from loading when the course was affected by the above issue
- Fixed an issue preventing assignment templates from being overwritten from themes/child themes
- Fix issue causing new quizzes to be unable to load questions list without reloading the builder
- Account endpoint labels will now obey translations from the LifterLMS core
- Account slugs will now obey settings defined in LifterLMS core settings
Updates and enhancements
- The course builder will now load quiz question data when the quiz is opened instead of loading all quizzes on builder page load. Improves builder load times and addresses an issue which could cause timeouts in certain environments when attempting to edit very large courses.
- The currently viewed lesson will now be bold in the lesson outline widget.
- Added a CSS class
.llms-widget-syllabus .llms-lesson.current-lessonwhich can be used to customize the display of the current lesson in the widget.
- Added the ability to filter quiz attempt reports by quiz status
- Updated language for access plans on with a limited number of payments to reflect the total number of payments due as opposed to the length (for example in years) that the plan will run.
- Fixed issue preventing oEmbed media from being used in quiz question descriptions
- Fixed issue preventing
<iframes>from being used in quiz question descriptions
- Quiz results will now exclude questions with 0 points value when displaying the number of questions in the quiz.
- Fixed error occurring when sorting was applied to quiz attempt reports which would cause quiz attempts from other quizzes to be included in the new sorted report
- Fixed filter
lifterlms_reviews_section_titlewhich was unuseable due to the incorrect usage of
_e()within the filter. Now using
- Fixed issue causing course featured image to display in place of lesson feature images
- When adding or changing API keys, test calls will be made to check if the keys are functional. If they are not a warning will be displayed.
- Fixed issue preventing cached tags and sequences from being cleared by the button on the integration settings
$skip_cachewhen calling api class methods to bypass cached results. This function should no longer be used by third party integrations, custom plugins, or themes as it will be removed in the next major version.
- Fixed CSS specificity issue on admin panel causing white text on white background on system status pages
Updates and enhancements
- Added a “My Memberships” tab to the student dashboard
- “My Memberships” preview area
- Updated admin panel order status badges to match frontend order status badges
- Added a new recurring order status “Pending Cancel.” Orders in this state will allow students to access course / membership content until the next payment is due, on this date, instead of a recurring charge being made the order will move to “Cancelled” and the student’s enrollment status will change to “Cancelled” removing their access to the course or membership.
- When a student cancels an active recurring order from the student dashboard, the order will move to “Pending Cancellation” instead of “Cancelled”
- Students can re-activate an order that’s Pending Cancellation moving the expiration date to the next payment due date
- Added the ability to edit the access expiration date for orders with limited access settings and for orders in the “pending-cancel” state
- Added a filter to allow customization of the URL used to generate certificate downloads from
- When viewing taxonomy archives for any course or memberhip taxonomy (categories, tags, and tracks), if a term description exists, it will be used instead of the default catalog description content defined on the catalog page.
- Added a filter (
llms_archive_description) to allow filtering of the archive description
WP_DEBUGis disabled the scheduled-actions posttype interface is now available via direct link. Useful for debugging but don’t want to expose a menu-item link to clients. Access via wp-admin/edit.php?post_type=scheduled-action. Be warned: you shouldn’t be modifying scheduled actions manually and that’s why we’re not exposing this directly, this should be used for debugging only!
- Updated the function used to check if lessons have featured images to improve performance and resolve an incompatibility issue with WP Overlays plugin.
- Fixed issue causing “My Courses” title to be duplicated on the student dashboard when viewing the endpoint
- Fixed issue causing the trial price to be displayed with a strike-through during a sale
- Fixed coupon issue causing coupons to expire at the beginning of the day on the expiration date instead of at the end of the day
- Fixed issue causing CSS rules to lose their declared order during exports causing export rendering issues with certain themes and plugin combinations