Recent Updates
Tweaks
- Option show product variations in quickview, but not the archive.
Fixes
- Resolved an issue on the donation admin screen
Fixes
- Ensure mail logs are saved even if the message contains multibyte characters or is too long.
Fixes
- Resolved an issue where any text after an ampersand (&) was skipped/removed from emails.
- Resolved an issue where disabling the delete team icon did not remove it from the Groups Plus frontend dashboard.
- Resolved an issue where the course time spent functionality could not count the time spent in the course child steps.
- Resolved an issue where the team members' view showed incorrect course steps when a course uses shared steps.
Tweaks
- Updated templates:
src/resources/templates/team-member/email-team-member.php,src/resources/templates/team-member/lesson-listing.php.
Fixes
- Resolved an issue that was causing an error with WooCommerce Subscriptions
Fixes
- Infinite Scroll Pagination Breaks After Clicking the Back Button
Fixes
- SureCart instant checkout issue with conversion rules.
Tweaks
- Version number
Fixes
- Resolved an issue where the "Result messages" list item text would output HTML tags instead of stripping them out.
- Resolved an issue when creating or editing a Course using the Frontend Editor with LearnDash LMS v5.0.0 enabled where the "Course points - Required for access" and the "Course points - Awarded on completion" values would be invalid if not set.
- Resolved an issue where Administrators could not remove any Groups from a Course and Instructors could not remove all Groups from a Course when using the Frontend Course Editor.
- Resolved an issue where all Users could not be removed from a Course when using the Frontend Course Editor.
- Resolved an issue where an administrator couldn't submit a comment on an assignment from the instructor dashboard.
- Resolved an issue where course prerequisites and course points could not be properly enabled in the frontend course builder.
- Resolved an issue where multiple updates to Enrollment-based Quiz Release Schedule via the Frontend Quiz Editor could clears the field.
- Resolved an issue where the "Custom Field Name" field would lose focus after each character input.
- Resolved an issue where the "Custom Fields" toggle switch value was not saved in the database or output correctly on the frontend quiz builder.
- Resolved an issue where the "Result messages" toggle setting value couldn't be stored in database.
- Resolved an issue where the Groups custom pagination settings were not persisted in the database.
- Resolved an issue where the
ldlms/v2/sfwd-courses/{id}/groupsendpoint would be called twice whenever it was called if the logged in user was an Instructor.
Security
- Improved security around assignment and essay REST API endpoints.
Tweaks
- Updated the frontend quiz builder to accommodate the LearnDash Core REST API v2 changes.
Deprecates
- Deprecated actions:
learndash_report_page_buttons. - Deprecated constants:
LEARNDASH_COURSE_FUNCTIONS_LEGACY,LEARNDASH_IS_QUIZ_ACCESSABLE_LEGACY. - Deprecated filters:
learndash_course_autocompletion_multiple_final_quizzes_step,learndash_course_status_recalc_total_steps,learndash_get_content_label,learndash_get_lesson_progress_defaults,learndash_get_lesson_progress,learndash_lesson_attributes,learndash_responsive_video_domains,learndash_responsive_video_post_types,learndash_update_posts_comment_status,learndash_users_can_register. - Deprecated functions:
ld_course_check_user_access,learndash_30_focus_mode_can_complete,learndash_30_responsive_videos,learndash_activity_complete_course,learndash_activity_complete_quiz,learndash_check_query_post_type,learndash_course_get_completed_steps_legacy,learndash_course_status_legacy,learndash_get_content_label,learndash_get_course_data_legacy,learndash_get_course_lessons_list_legacy,learndash_get_course_progress_legacy,learndash_get_course_quiz_list_legacy,learndash_get_course_steps_count_legacy,learndash_get_course_steps_legacy,learndash_get_course_url,learndash_get_current_tabs_set,learndash_get_essays_by_quiz_attempt,learndash_get_exam_challenge_available_courses,learndash_get_exam_challenge_courses,learndash_get_global_quiz_list_legacy,learndash_get_lesson_attributes,learndash_get_lesson_progress,learndash_get_lesson_quiz_list_legacy,learndash_get_paynow_courses,learndash_get_quiz_pro_fields,learndash_get_step_post_status_label,learndash_get_topic_list_legacy,learndash_get_user_course_attempts_time_spent,learndash_get_user_quiz_attempts_count,learndash_get_user_quiz_attempts_time_spent,learndash_is_lesson_notcomplete_legacy,learndash_is_quiz_accessable_legacy,learndash_is_topic_notcomplete_legacy,learndash_lms_reports_page,learndash_on_iis,learndash_process_mark_complete_legacy,learndash_report_user_courses_progress,learndash_set_course_prerequisite_enabled,learndash_set_course_prerequisite,learndash_set_exam_challenge_courses,learndash_test_admin_icon,learndash_the_currency_symbol,learndash_update_posts_comment_status,learndash_user_course_last_step,learndash_users_can_register,ls_propanel_set_report_filenames.
Features
- Added Angie Agentic AI integration.
- Added compatibility with our MCP Server, available using npm as
@stellarwp/learndash-mcp-server.
Fixes
- Corrected the
ldlms/v2REST API parameter documentation formaterialsfor eachldlms/v2endpoint. - Fixed an issue where administrators could not access essays in GET
ldlms/v2/sfwd-essays. - Fixed error code handling for the
ldlms/v2/sfwd-quiz/{quiz}/statistics,ldlms/v2/sfwd-quiz/{quiz}/statistics/{statistic},ldlms/v2/sfwd-quiz/{quiz}/statistics/{statistic}/questionsandldlms/v2/sfwd-quiz/{quiz}/statistics/{statistic}/questions/{id}endpoints. - Fixed pagination and
include/excludeparameters support in the REST API v2 List User Courses endpoint. - Resolved an issue when setting dates via the REST API for date fields such as Course and Group Start and End Date. Now they will work with RFC3339 formatted dates as expected.
- Resolved an issue where Lesson and Topic pagination settings could not be set for Courses using the
POST ldlms/v2/sfwd-coursesandPATCH ldlms/v2/sfwd-courses/{id}endpoints. - Resolved an issue where
POST ldlms/v2/sfwd-questionandPATCH ldlms/v2/sfwd-question/{id}were unable to set an associated Quiz correctly. - Resolved an issue where
ldlms/v2/sfwd-courses/{id}/userswould return the wrong users. - Resolved an issue where
ldlms/v2/sfwd-questionandldlms/v2/sfwd-question/{id}would not return answer data. - Resolved an issue where a default was not being shown for endpoints under
/learndash/v1/docs/openapi. - Resolved an issue where some fields marked as being exposed to the
ldlms/v2REST API would not be exposed properly. - Resolved an issue where the Quiz Statistic link would not be included with the results for
ldlms/v2/users/{id}/quiz-progresswhen it should be. - Resolved an issue where the
step_statusfield was incorrect in the REST API v2 User Course Progress Steps endpoint. - Resolved an issue where updating a quiz using the REST API could change the internal quiz pro ID.
- The
pageandper_pageparameters forldlms/v2/users/{id}/quiz-progressnow work as expected. POST ldlms/v2/sfwd-questionandPATCH ldlms/v2/sfwd-question/{id}now set answer data using the already documentedanswerkey instead of the undocumented_answerData.ldlms/v2REST API endpoints to retrieve a specific resource no longer expose the wrong parameters.
Tweaks
- Added documentation for the
approved_statusparameter for theGET ldlms/v2/sfwd-assignmentendpoint. - Added pagination support to the REST API v2 User Course Progress Steps endpoint.
- Added request body examples to OpenAPI documentation of
ldlms/v2/sfwd-courses/{id}/steps. - Added the REST API v2 User Course Progress Exam endpoint.
- Added the
date_gmtfield in theldlms/v2/sfwd-quiz/{quiz}/statisticsendpoint. - Added the
date_started_gmtanddate_completed_gmtfields to the REST API v2 User Course Progress Steps endpoint. - Added the
date_started_gmtanddate_completed_gmtfields to the REST API v2 User Course Progress endpoints. - Added the
enrolled_atandenrolled_at_gmtfields to the REST API v2 List User Courses endpoint. - Added the
ldlms/v2/users/{user_id}/courses/{course_id}endpoint to allow updating an enrollment date for a user. - Added the
learndash/v1/progress-status,learndash/v1/progress-status/{type}andlearndash/v1/progress-status/{type}/{slug}endpoints. - Added the
step_namefield to the REST API v2 User Course Progress Steps endpoint. - Added the
valuefield to theldlms/v2/progress-status/andldlms/v2/progress-status/{slug}/endpoints. - Adds the following fields to the
ldlms/v2/groupsandldlms/v2/groups/{id}endpoints:group_start_date,group_end_date,group_courses_order_enabled,group_seats_limit. - Administrators can now access the GET
ldlms/v2/sfwd-questionendpoint whether or not the "Bypass Course limits" setting is enabled or disabled. - All logged in users can now access the
GET ldlms/v2/sfwd-assignmentandGET ldlms/v2/sfwd-assignment/{id}endpoints. Admins will be able to retrieve all Assignments, Group Leaders only Assignments submitted by themselves or a user within one of their Groups for Courses within those Groups, and all other users will only be able to retrieve their own Assignments. - By default,
learndash/v1/docs/openapino longer documents certain HTTP methods forldlms/v2endpoints in order to save on token size. This can be reverted to the previous functionality usinglearndash/v1/docs/openapi?trim=false. - Group Course pagination settings can now be set via
POST ldlms/v2/groupsandPATCH ldlms/v2/groups/{id}. At this time, this setting does nothing if Modern Group Pages are enabled. - Improved REST API parameter descriptions for setting Course Prerequisites.
- Improved parameters description for
/ldlms/v2/users/{user_id}/course-progress/{course_id}and/ldlms/v2/users/{user_id}/course-progress/{course_id}/steps. - Improved parameters description for the
ldlms/v2/sfwd-quiz/{quiz}/statistics,ldlms/v2/sfwd-quiz/{quiz}/statistics/{statistic},ldlms/v2/sfwd-quiz/{quiz}/statistics/{statistic}/questionsandldlms/v2/sfwd-quiz/{quiz}/statistics/{statistic}/questions/{id}endpoints. - Improved route discovery for OpenAPI documentation of existing REST API endpoints.
- Improved the
ldlms/v2/question-types/andldlms/v2/question-types/{slug}/endpoints. Added thevaluefield, removed thedescriptionfield, updated theslugfield to be a hyphenated slug instead of an underscore slug, both variants are supported for compatibility. - Improved the descriptions for parameters in the
ldlms/v2/sfwd-quizandldlms/v2/sfwd-quizzesendpoints. - Improved the descriptions for parameters in the
ldlms/v2/users/{user_id}/course-progress/*endpoints. - Normalized the
ldlms/v2/users/{user_id}/coursesendpoints to always return thecodefield with thelearndash_prefix. - Normalized the
ldlms/v2/users/{user_id}/groupsendpoints to always return thecodefield with thelearndash_prefix. - Now
lessonandtopicparameters in GETldlms/v2/sfwd-essayswork with or without thecourseparameter. - Now the GET endpoint
ldlms/v2/users/{user_id}/course-progress/{course_id}/stepsreturns the status value in thestep_statusfield (with underscore). - Now the GET endpoints
ldlms/v2/users/{user_id}/course-progressandldlms/v2/users/{user_id}/course-progress/{course_id}returns the status value in theprogress_statusfield (with underscore). - Now the
datefield from theldlms/v2/sfwd-quiz/{quiz}/statisticsendpoint returns the date in the local timezone. - Removed admin alerts related to Solid Backups.
- Removed the "Course Admin Auto-enrollment" permission dependency for administrators in
wp-json/ldlms/v2/sfwd-courses/<id>/steps. - Removed the nested array from the GET endpoint
/ldlms/v2/users/{user_id}/course-progress/{course_id}. - Removed the nested array from the REST API v2 User Course Progress Steps endpoint.
- Removed the nested array from the
ldlms/v2/sfwd-quiz/{quiz}/statistics/{statistic}/questions/{id}endpoint response. - Removed the unused
searchparameter fromldlms/v2/users/{id}/quiz-progress. - Retrieving quizzes via
ldlms/v2/sfwd-quizno longer requires acourseparameter for administrators. - The GET endpoint
ldlms/v2/groups/{id}/coursesnow returns the same fields as the GETldlms/v2/sfwd-coursesendpoint. - The GET endpoint
ldlms/v2/users/{user_id}/coursesnow returns the same fields as the GETldlms/v2/sfwd-coursesendpoint. - The GET endpoint
ldlms/v2/users/{user_id}/groupsnow returns the same fields as the GETldlms/v2/groupsendpoint. - The REST API settings section under LearnDash LMS -> Settings -> Advanced is now hidden if you had not made any modifications there previously.
- The
PATCH ldlms/v2/sfwd-assignmentendpoint is now available to admins and any user with the ability to edit other user's Assignments, which normally would only include Group Leaders. Admins can edit any user's Assignments including their own. Group Leaders will only be able to edit those belonging to users within their Groups and only for Assignments submitted for a Course within their Groups. - The
course_start_dateandcourse_end_datefield types forPOST ldlms/v2/sfwd-coursesandPATCH ldlms/v2/sfwd-courses/{id}have been reverted tostringas they were before v4.25.2. - The
custom_fields_formsparameter forldlms/v2/sfwd-quizandldlms/v2/sfwd-quiz/{id}is now marked read-only. Attempting to set the value previously did nothing. - The
date_startedanddate_completedfields in the REST API v2 User Course Progress endpoints now return the date in the site timezone. - The
ldlms/v2/sfwd-quizandldlms/v2/sfwd-quiz/{id}endpoints now accept and return WordPress Post IDs for theprerequisitesfield instead of internal Pro Quiz IDs. - The
ldlms/v2/sfwd-quizendpoint no longer requires thecourseparameter for non-administrators if they pass through alessonortopicparameter when Shared Course Steps are disabled. - The
ldlms/v2/users/{user_id}/course-progress/{course_id}/stepsendpoint now returns the appropriate progress status based on the post type of the course step. - The
learndash/v1/docs/openapiendpoint now explicitly lists the namespace as part of thepathskey to avoid potential collisions across namespaces. - The parameter description for
question_typefor theldlms/v2/sfwd-questionandldlms/v2/sfwd-question/{id}endpoints has been improved. - Updated the
orderparameter forldlms/v2/users/{id}/quiz-progressto no longer be case sensitive. - Updated the
orderbyparameter forldlms/v2/users/{id}/quiz-progressto no longer expectIDwhen sorting by IDs and can now also acceptidas it was documented. - Updated the required WP version from 6.6 to 6.7.
POST ldlms/v2/sfwd-questionandPATCH ldlms/v2/sfwd-question/{id}now return the same structure asGET ldlms/v2/sfwd-question/{id}.prerequisite_enabledis no longer exposed to the REST API forldlms/v2/sfwd-coursesandldlms/v2/sfwd-courses/{id}. This setting is not meant to be set via the REST API and you should instead setrequirements_for_enrollmenttocourse_prerequisite_enabledfor the same behavior.- Added filters:
learndash_model_assignment_course,learndash_post_type_progress_statuses,learndash_settings_section_{$this->settings_section_key}_is_visible. - Added functions:
learndash_course_challenge_exam_get_questions_stats,learndash_get_user_quiz_average. - Updated filters:
learndash_group_courses_per_page,learndash_quiz_info_paged,learndash_rest_openapi_documentation. - Updated functions:
learndash_course_get_completed_steps,learndash_course_status,learndash_get_certificate_link,learndash_get_course_data,learndash_get_course_groups,learndash_get_course_lessons_list,learndash_get_course_progress,learndash_get_course_quiz_list,learndash_get_course_steps_count,learndash_get_course_steps,learndash_get_global_quiz_list,learndash_get_lesson_quiz_list,learndash_get_topic_list,learndash_group_enrolled_courses,learndash_is_lesson_notcomplete,learndash_is_quiz_accessable,learndash_is_topic_notcomplete,learndash_is_user_in_group,learndash_process_mark_complete.