The LifterLMS Progress Reset add-on allows administrators to reset progress for any given LifterLMS course. Progress can be deleted for all lessons, topics, quizzes, courses, and memberships for all enrolled students or any specific user(s) according to your needs.
The add-on can not only reset the userโs progress for completed courses, but it can also reset partial course progress. The add-on is also able to delete data for user quiz attempts. The add-on function will only affect users with progress on a course while ignoring users whose progress is already zero.
Installation
- Install and activate the LifterLMS plugin.
- Install and activate the LifterLMS Progress Reset Add-on.
- A new Progress Reset submenu entry will be added to the LifterLMS menu on the WordPress Dashboard.

License Key Configuration
Go to the License Settings tab to add and activate the add-onโs License Key. The License Key can be found in the email you received when you purchased the add-on. Then, add your license key in the corresponding field and click on Activate.

Note: Resetting the progress from either of the possible options will reset the progress of enrolled courses, lessons, quizzes, and membership courses from the userโs account.
General Settings
General
In this sub-tab, the administrator will be able to view all the general settings related to our addon.

Enable Activity Logs
Enabling this feature will create a log of actions taken within the addon. These actions are recorded, making it simpler for the WooNinjaโs support team to identify and resolve any issues efficiently. Here you will be able to clear and copy the activity log. Additionally, you will be able to find the โllmspr-activity.logโ file in the โ(Your Website Name) \wp-content\uploadsโ directory.

Enable Debug Logs
Enabling this feature will create a by default WordPress-generated log. These logs will record all the errors and warnings, making it simpler for the WooNinjaโs support team to identify and resolve any issues efficiently. Here you will be able to download the debug logs in a .txt file.

In this sub-tab, you can set the email-related settings of our addon.
Administrator
Enable Email:
Enable email notifications for the administrator. You can use the following placeholders in your emailโs content:
- {recipient_name} to use the email recipient’s name.
- {user_name} to use the studentโs user name.
- {first_name} to use the studentโs first name.
- {last_name} to use the studentโs last name.
- {email} to use the studentโs email.
- {course_title} to use the studentโs course title for which the progress has been reset.
- {reset_date} to use the progress reset date.
- {site_name} to use the siteโs name.
- {site_url} to use the siteโs URL.
All Emails:
If enabled, the administrator will receive notification emails for all resets performed by any role.
If this toggle is disabled, emails will be sent to the administrator(s) whenever the administrator resets the progress of a student by the administrator (backend – WordPress Panel, frontend – course page).
If this toggle is enabled, emails will be sent to the administrator(s) whenever someone resets the progress of a student by an administrator (backend – WordPress Panel, frontend – course page), or instructor (backend – WordPress Panel, frontend – course page), or by the student (from the course page).

Instructor
Enable Email:
Enable email notifications for the instructor. You can use the following placeholders in your emailโs content:
- {recipient_name} to use the email recipient’s name.
- {user_name} to use the studentโs user name.
- {first_name} to use the studentโs first name.
- {last_name} to use the studentโs last name.
- {email} to use the studentโs email.
- {course_title} to use the studentโs course title for which the progress has been reset.
- {reset_date} to use the progress reset date.
- {site_name} to use the siteโs name.
- {site_url} to use the siteโs URL.
Frontend Student Notifications:
If enabled, instructors will receive notification emails for resets performed by students in their courses or memberships.
If this toggle is disabled, emails will be sent to the instructor whenever an instructor resets the progress of a student from the backend – WordPress Panel, frontend – course page.
If this toggle is enabled, emails will be sent to the instructor whenever someone resets the progress of a student by an instructor (backend – WordPress Panel, frontend – course page), or by the student (from the course page).
In case the student resets their progress, an email will be sent to the instructor of the course. Similarly, in case the instructor resets the studentโs progress, an email will be sent to only the respective instructor.

Student
Enable Email:
Enable email notifications for Students. You can use the following placeholders in your emailโs content:
- {recipient_name} to use the email recipient’s name.
- {user_name} to use the studentโs user name.
- {first_name} to use the studentโs first name.
- {last_name} to use the studentโs last name.
- {email} to use the studentโs email.
- {course_title} to use the studentโs course title for which the progress has been reset.
- {reset_date} to use the progress reset date.
- {site_name} to use the siteโs name.
- {site_url} to use the siteโs URL.
If this toggle is disabled, emails will not be sent to the student when the progress is reset by anyone from anywhere, like by an administrator (backend – WordPress Panel, frontend – course page), an instructor (backend – WordPress Panel, frontend – course page), or by the student (from the course page).
If this toggle is enabled, emails will be sent to the student whenever someone resets the progress of a student by an administrator (backend – WordPress Panel, frontend – course page), instructor (backend – WordPress Panel, frontend – course page), or by the student (from the course page).

Reset Request (Admin)
Enable Email:
Enable email notifications for administrators when a student or subscriber makes a new reset request. You can use the following placeholders in your emailโs content:
- {recipient_name} to use the email recipient’s name.
- {user_name} to use the studentโs user name.
- {first_name} to use the studentโs first name.
- {last_name} to use the studentโs last name.
- {email} to use the studentโs email.
- {course_title} to use the studentโs course title for which the progress has been reset.
- {reset_date} to use the progress reset date.
- {site_name} to use the siteโs name.
- {site_url} to use the siteโs URL.

Request Approved (Student / Subscriber)
Enable Email:
Enable email notifications for students when their course reset request is approved. You can use the following placeholders in your emailโs content:
- {recipient_name} to use the email recipient’s name.
- {user_name} to use the studentโs user name.
- {first_name} to use the studentโs first name.
- {last_name} to use the studentโs last name.
- {email} to use the studentโs email.
- {course_title} to use the studentโs course title for which the progress has been reset.
- {reset_date} to use the progress reset date.
- {site_name} to use the siteโs name.
- {site_url} to use the siteโs URL.

Request Rejected (Student / Subscriber)
Enable Email:
Enable email notifications for students when their course reset request is rejected. You can use the following placeholders in your emailโs content:
- {recipient_name} to use the email recipient’s name.
- {user_name} to use the studentโs user name.
- {first_name} to use the studentโs first name.
- {last_name} to use the studentโs last name.
- {email} to use the studentโs email.
- {course_title} to use the studentโs course title for which the progress has been reset.
- {reset_date} to use the progress reset date.
- {site_name} to use the siteโs name.
- {site_url} to use the siteโs URL.

Progress Reset Settings
In this tab, administrators will be able to view all the different progress reset options.
Reset Engagement Emails
This option allows admins to reset and remove all the sent engagement emails sequence.
- Select the โProgress Resetโ sub-menu, located under the LifterLMS menu.
- Select the โProgress Reset Settingsโ tab and check the box on the โReset emailsโ field.
- Select the user, course, or membership that you want to reset the progress for using the fields located below.
- Click on the โReset Progressโ button.
- Finally, a warning pop-up will appear. To make the progress reset effective, click on โOKโ.

Reset Progress For Users
Admins can reset course progress for a single user, multiple users, or all users.
Follow these steps to reset a userโs progress:
- Select the โProgress Resetโ sub-menu, located under the LifterLMS menu.
- Select the โProgress Reset Settingsโ page and scroll down to the โSelect Usersโ field.
- Select the user or multiple users that you wish to reset progress for. You can also select โAllโ to reset the course progress of all the enrolled users.

- Click on the โReset Progressโ button.
- Finally, a warning pop-up will appear. To make progress reset effective, click on โOK.โ In case you accidentally performed the progress reset, the โUndo Changesโ button will become enabled. You will have 24 hours to press the โUndo Changesโ button to revert the progress of the respective users, courses, groups, and user roles.
Reset Progress For Courses
The add-on allows you to reset the progress of all enrolled users in the selected course or courses.
Follow these steps to reset course progress:
- Select the โProgress Resetโ sub-menu located under the LifterLMS menu.
- Go to the โProgress Reset Settingsโ page and scroll down to the โSelect Coursesโ field.
- Select the course or courses that you want to reset student progress for. You can also select โAllโ to reset course progress for all the available courses. This will delete the progress of all students enrolled in the selected course(s).

- Click on the โReset Progressโ button.
- A warning pop-up will appear. To finalize the process, click on โOK.โ In case you accidentally performed the progress reset, the โUndo Changesโ button will become enabled. You will have 24 hours to press the โUndo Changesโ button to revert the progress of the respective users, courses, groups, and user roles.
Reset Progress For Memberships
With this add-on, the admin can reset progress for all users and courses that belong to a selected membership or memberships.
Follow these steps to reset course progress for users enrolled in selected LifterLMS memberships:
- Select the โProgress Resetโ sub-menu located under the LifterLMS menu.
- Go to the โProgress Reset Settingsโ page and scroll down to the โSelect Membershipsโ field.
- Select the LifterLMS membership(s) that you want to reset student progress for. You can also select โAllโ to reset the studentsโ course progress for all available memberships.

- Click on the โReset Progressโ button.
- A warning pop-up will appear. To finalize the process, click on โOK.โ In case you accidentally performed the progress reset, the โUndo Changesโ button will become enabled. You will have 24 hours to press the โUndo Changesโ button to revert the progress of the respective users, courses, groups, and user roles.
Reset Progress For Multiple Users, Courses, and Memberships
This add-on allows you to reset the progress of several specific users, courses, and memberships simultaneously.
For example, you can reset the progress of several users, but only for a set of specific courses. To do this, you have to select the specific users in the โSelect Usersโ field and then select the specific courses in the โSelect Coursesโ field before clicking on the โReset Progressโ button.

Similarly, you can reset the progress of any specific user(s), but only for specific courses that belong to a particular LifterLMS membership. To do this, choose the specific user(s) from the โSelect Usersโ field and specific course(s) in the โSelect Coursesโ field. Then, select the specific membership(s) in the โSelect membershipsโ field. Lastly, click on the โReset Progressโ button. In case you accidentally performed the progress reset, the โUndo Changesโ button will become enabled. You will have 24 hours to press the โUndo Changesโ button to revert the progress of the respective users, courses, groups, and user roles.

Bulk Reset Settings
Imagine you have a large number of users, letโs say 1000, and you want to reset the progress of only a subset of these users, perhaps 800 of them. Doing this individually for each user can be a time-consuming and impractical task. To streamline this process, weโve introduced a Bulk feature within our add-on.
This way, you can quickly export a user list, modify it to include only the users you want to reset progress for, and upload it to your site. Progress will be reset for a precise set of students, all with the click of a button.

Export (CSV)
For efficient management of your student data, our Export (CSV) feature enables you to easily export a list by simply clicking on the โExportโ button.

Import (CSV)
To streamline progress reset for a large number of students, our Import (CSV) feature allows you to reset progress for multiple users at once. Once you have exported your user list, you can edit the CSV file as per your requirements and then upload the file back to the site from the โChoose Fileโ button.
Finally, click on the โReset Progressโ button. A warning pop-up will appear. To make progress reset effectively, click on โOK.โ In case you accidentally performed the progress reset, the โUndo Changesโ button will become enabled. You will have 24 hours to press the โUndo Changesโ button to revert the progress of the respective users, courses, groups, and user roles.
Allow Users
This tab displays all the options related to progress reset functionality implemented for the different user roles.

Allow User Roles
From here, you can select the user roles that will have access to the progress reset option from the WordPress backend.

Allow Specific Users
From here, you can select the specific users of the site who will have access to the progress reset option from the WordPress backend.
Frontend Allowed Roles
From here, you can select the user roles that will have access to the progress reset options from the frontend on the course page. The users of the respective user role will need to be enrolled in the respective course, and the โShow Reset Progressโ option needs to be enabled by the administrator from the backend. They will see the โCourse Progress Resetโ section at the bottom of the page above the footer. When they click the โReset Progressโ button, a โReset Progress (Admin)โ pop-up will open. The instructors will only be able to view/filter their own respective users, courses, and memberships, while administrators and other user roles will be able to view and filter all the users, courses, and memberships.

Show Reset Progress
Enabling this toggle will allow users to reset their courseโs progress from the frontend on the course page for enrolled courses. When this option is enabled, the โCourse Progress Resetโ section will be visible to the users who are enrolled in the respective course on their course page. When the user clicks the โReset Progressโ button, a progress reset confirmation alert will become visible. If the user clicks โOKโ, the respective user’s respective courseโs progress will be reset. If the user clicks โCancelโ, then nothing will happen.

Show Request Reset
Enabling this toggle will show the โCourse Progress Resetโ section with a โRequest Resetโ button on the course page for enrolled students. When a student presses it, a course progress reset request will be sent to the administrator in the โReset Requestsโ tab. By default, the โRequest Resetโ button will be disabled. Once the user has made some progress on the respective course, the โRequest Resetโ button will become enabled.


.
Reset Requests
In this tab, the administrator will receive all the course progress reset requests that the students will send from the frontend by clicking the โRequest Resetโ button on the course page. If the administrator approves the progress reset request, then the respective courseโs progress for the respective user will be reset. If the administrator rejects the progress reset request, then nothing will happen. The administrator can also delete the requests sent by the students. Once a student has sent a progress reset request for a course, they will not be able to send another one until the previously sent one has been approved, rejected, or deleted.

FAQโs
Are unreviewed quiz attempts deleted during the progress reset using this add-on?
Yes, any unreviewed quiz attempts are also deleted when there is a progress reset.
If there is more than one course included in a single membership, will resetting progress for that membership result in resetting the progress of all of the included courses?
Yes, this reset will result in the deletion of progress for all the courses within the selected membership.
Will enrolled students who havenโt started a course yet be affected by the reset?
The add-on will ignore those users whose progress is zero.
What does the โReset emailโ option do?
This option resets the sent engagements email sequence, so that the engagements can be reused again. Please follow the official LifterLMS documentation to know more about the engagement emails.
Changelogs
1.2.1
- Fix: Resolved security vulnerabilities and enhanced overall performance.
1.2.0
- New: Added automated email notifications for Students, Instructors and Administrators upon progress reset events.
- New: Added Undo functionality to revert the last reset progress.
- New: Added a frontend “Reset Request” system, enabling students to request progress resets directly from the admin.
- New: Added allow user roles functionality to select who can reset progress.
- Fix: Improved Licensing Module.
1.1.1
- Fix: Fixed the download option in the debug log.
- Fix: Fixed the license expired notice appearing on an invalid license during license activation.
- Fix: Minor bug fixes.
1.1.0
- Fix: Fixed minor issues.
1.0.9
- Fix: Fixed depreciated message issue in license file.
1.0.8
- New: Added csv export/import users course progress option to reset course progress.
1.0.7
- New: Added Bulk reset option.
1.0.6
- Fix: Resolved warnings to improve stability.
- Fix: Made memberships Select Ajax based.
1.0.5
- Fix: Fixed error on user reset.
1.0.4
- New: Fixed the license request time issue that can affect website speed.
1.0.3
- New: Made users select Ajax based.
- New: Made courses select Ajax based.
1.0.2
- Fix: Fixed lessons reset issue
1.0.1
- New: An option to reset Engagement Emails
- Fix: Code to support translations
- Fix: Select input UI.
- Fix: Progress bar UI
- Fix: Fixed spelling mistakes
1.0.0
- Initial Release.