| 开发者 | wpforwards |
|---|---|
| 更新时间 | 2026年10月15日 01:47 |
| 捐献地址: | 去捐款 |
| PHP版本: | 7.4 及以上 |
| WordPress版本: | 7.1 |
| 版权: | GPLv2 or later |
| 版权网址: | 版权信息 |
/wp-content/plugins/ and activate.No. It is strictly read-only: it never enrolls, unenrolls, restores access or changes expiry dates, and it deliberately avoids LearnDash functions that can trigger access changes as a side effect. It only listens to the events LearnDash already fires and writes a record of them. If anything goes wrong while logging, the error is caught, so the student's enrollment always completes exactly as it would without the plugin.
Go to Enrollment Logs > View Logs and search for the student's name, username, email or ID, or for the course. Each row shows when the change happened, whether it was an enrollment or unenrollment, what caused it and whether the result looks correct. Click the date to see the full details, including which user performed the action.
The plugin checks whether each change makes sense at the moment it happens. Valid means the result is consistent with the event, for example a student was unenrolled because their access had expired. Invalid means something conflicts, for example a student was unenrolled while their access was still active and no administrator did it. That is worth investigating, but it is not proof of a bug. Unknown means there was not enough information to judge safely, which is common for enrollments made by payment or membership plugins. The plugin never guesses: an unenrollment is never assumed wrong and an enrollment is never assumed correct.
Every change that goes through LearnDash's course access system is logged: manual enrollment by an administrator, self-enrollment, purchases through WooCommerce or LearnDash payments, memberships, group enrollment, imports, custom code, the REST API, WP-CLI and access expiry. The cause is shown when it can be proven; otherwise it is shown as Unknown. Logging starts when the plugin is activated; earlier changes cannot be reconstructed because LearnDash does not keep that history.
Go to Enrollment Logs > Logs Settings > Email Notifications, switch on "Enable admin emails" and choose what should trigger an alert. Invalid events only is the recommended setting. Use "Send test email" to check that your site can deliver mail.
Check the recipients, check your spam folder, and use "Send test email". The plugin sends mail through your site's normal WordPress mail setup, so if other emails from your site (such as password resets) don't arrive either, install an SMTP plugin or ask your host to fix outgoing mail.
No. A per-hour rate limit (20 by default) holds back extra alerts and sends them together in one summary email. You can also switch to an hourly or daily summary.
When a student who is already enrolled, with course access that has expired, buys the same course again, LearnDash's own WooCommerce integration removes the old access and grants it again so the access period restarts. Both changes really happen, so both are logged. The plugin shows them as source WooCommerce, with the unenrollment labelled "Access reset (repeat purchase)" and the enrollment labelled "Purchase". A first purchase by a new student produces a single enrollment.
There is no noticeable impact. Nothing runs on page loads where course access does not change; when it does, the event is saved once, with a single database insert at the end of the request. The log stores only IDs (student, course and the user who acted), the action, its cause and status, and a little technical context. It does not store passwords, IP addresses or email addresses, and only administrators can view it.
Yes. By default your logs are kept, because they are an audit trail. To remove everything, tick "Delete data on uninstall" in Logs Settings > Privacy & Data before deleting the plugin.
Yes. In Logs Settings > Logging choose "Auto-delete old logs" (30 days to 2 years). The default is to keep logs forever.
Yes. It works with the WordPress Export and Erase Personal Data tools, can erase a user's events when their account is deleted, and adds suggested text for your privacy policy.
Users with the manage_options capability (administrators). Developers can change this with the evlfl_capability filter.