Email Log is a WordPress plugin that allows you to easily log and view all emails that were sent from WordPress.
This would be very useful for debugging email related problems in your WordPress site or for storing sent emails for auditing purposes, especially on ecommerce sites that are setup with either WooCommerce or Easy Digital Downloads.
You can perform advanced actions like re-sending email, automatically forwarding emails or export logs with our premium add-ons.
Works with WordPress Multisite as well.
Viewing logged emails
The logged emails will be stored in a separate table and can be viewed from the admin interface.
While viewing the logs, the emails can be filtered or sorted based on the date, email, subject etc.
Deleting logged emails
In the admin interface, all the logged emails can be delete in bulk or can also be selectively deleted based on date, email and subject.
If you want to automatically delete the email logs after some days, then you can use the Auto Delete Logs add-on.
Resend email (Pro addon)
You can buy the Resend email pro add-on,
which allows you to resend the email directly from the email log.
The add-on allows you to modify the different fields of the email before resending it.
More Fields (Pro addon)
You can buy the More Fields pro add-on,
which shows additional fields in the email log page. The following are the additional fields that are added by this addon.
- Reply To
Forward email (Pro addon)
You can buy the Forward email pro add-on,
which allows you to send a copy of all the emails send from WordPress to another email address.
The addon allows you to choose whether you want to forward through to, cc or bcc fields.
This can be extremely useful when you want to debug by analyzing the emails that are sent from WordPress.
Export email logs (Pro addon)
You can buy the Export Email Logs add-on, which allows you to export the email logs as a csv file for further processing or record keeping.
Cleaning up db on uninstall
As recommended by Ozh, the Plugin has an uninstall hook which will clean up the database and options when the Plugin is uninstalled.
You can find fully searchable documentation about using the plugin in the doc section of the Email Log website.
The development of the Plugin happens over at github.
If you want to contribute to the Plugin, fork the project at github and send me a pull request.
If you are not familiar with either git or Github then refer to this guide to see how fork and send pull request.
- If you have a question about usage of the free plugin or need help to troubleshoot, then post in WordPress forums.
- If you have a question about any of the pro add-ons or have a feature request then post them in the support section of our site.
- If you have any development related questions, then post them as github issues
The Plugin currently has translations for the following languages.
- German (Thanks Frank)
- Lithuanian (Thanks Vincent G)
- Dutch (Thanks Zjan Preijde)
The pot file is available with the Plugin.
If you are willing to do translation for the Plugin, use the pot file to create the .po files for your language and let me know.
I will add it to the Plugin after giving credit to you.
This Readme file was generated using wp-readme, which generates readme files for WordPress Plugins.
Normal WordPress installations
Extract the zip file and just drop the contents in the wp-content/plugins/ directory of your WordPress installation and then activate the Plugin from Plugins page.
The content of the email is not getting logged when I am using wpmandrill plugin
wpmandrill plugin has a bug that prevents this plugin from logging the content of the email.
More details about the bug is available at https://wordpress.org/support/topic/mandrill-is-changing-the-names-of-args-in-the-filter?replies=1.
I have asked the author of the plugin to fix it and it might get fixed it the next release.
Meanwhile, I have added a hack to handle this condition in v1.7.3 of my plugin. So if the content is not getting logged, then upgrade to v1.7.3.
Contributors & Developers
“Email Log” is open source software. The following people have contributed to this plugin.Мүчөлөрү
v2.4.8 – (2021-11-06)
- Fix: Escape the search parameters before rendering them
v2.4.7 – (2021-10-13)
- Fix: Fix the typo that was introduced in v2.4.6
v2.4.6 – (2021-10-13)
- Fix: Enhance how order and order by works.
- Tweak: Tested upto WordPress 5.8
v2.4.5 – (2021-04-13)
- Fix: Don’t override WordPress plugin update in base plugin.
v2.4.4 – (2021-03-28)
- Tweak: Use the jQuery UI that is bundled with WordPress.
- Tweak: Don’t load add-on information from a local json file.
v2.4.3 – (2020-10-09)
- New: Added
el_log_time_display_formatfilter to change the email log display time.
- New: Provide an option for translators to override the email log display time.
- Tweak: Enhanced the nonce check.
v2.4.2 – (2020-07-07)
- Fix: Fixed issues with email preview tab switcher that occurred in some installations.
- Tweak: Enhanced the UI for lifetime license activation.
v2.4.1 – (2020-07-06)
- Fix: Added a missing file that broke v2.4.0 release for some installations.
v2.4.0 – (2020-07-05)
- New: Capture the error message when an email fails to be delivered.
- New: Show seconds in send time.
- Tweak: Enhance the email preview screen.
- Tweak: Code enhancements for better maintenance.
- Fix: Minor CSS alignment issues in addon list page.
v2.3.2 – (2020-03-03)
- New: Added the ability to log BuddyPress emails which don’t use wp_mail function.
- New: Supports PHP 5.6 to PHP 7.4
- Tweak: Design tweaks for WordPress 5.3
- Fix: Don’t throw a warning if wrong data is passed to wp_mail function.
- Fix: Bulk Actions that were performed from the bottom dropdown in the Log List page was not working.
v2.3.1 – (2019-04-11)
- Fix: Added a missing file that broke v2.3.1 release for some installations.
v2.3.0 – (2019-04-11)
- New: The ‘To’ and ‘Subject’ fields now supports text upto 500 characters.
- New: Store the name of the attachment file if present.
- New: Store ip address of the request that triggered the email.
- New: Setting to enable notification when the number of email logs reach a threshold.
- New: Dashboard Widget – Provide an option to hide Dashboard Widget from all users.
- Tweak: Dashboard Widget – Add a thousand separator for logs count.
- Tweak: Improve the preview of HTML emails.
- Tweak: Enhanced the output of System Info page.
- Fix: Deleting logs in bulk was not working.
- Fix: Added compatibility with wp-ses plugin.
- Fix: Added the ability to deactivate expired license.
v2.2.5 – (2018-02-22)
- Tweak: Show Dashboard Widget only if the user can view email logs.
v2.2.4 – (2017-11-23)
- Tweak: Tweaks to how the license is handled.
v2.2.3 – (2017-11-09)
- Fix: Escaped all the fields while displaying email details in popup.
v2.2.2 – (2017-11-07)
- Tweak: Improved the way nonce checks are performed.
- Fix: Escaped the email content before showing it in preview.
v2.2.1 – (2017-11-04)
- Tweak: Improved the UX of the view email content screen.
v2.2.0 – (2017-10-09)
- New: Dashboard Widget that display summary about email logs.
- Tweak: Performance improvements in add-on license code.
v2.1.0 – (2017-09-21)
- New: GUI option to choose the user roles that can access email logs.
- New: GUI option to delete email log table when the plugin is uninstalled.
- Tweak: Performance improvements.
- Tweak: Delete all traces of the plugin from DB if the user chooses to destroy data during uninstall.
- Fix: Handle cases where there is a quote in front of email address.
- Fix: Handle cases where array passed to
wp_mailmay not contain all the required fields.
v2.0.2 – (2017-08-07)
- Fix: Renamed include/util directory to correct case. This caused issues in some install.
v2.0.1 – (2017-08-04)
- Fix: Fixed a CSS issue in view logs page.
- Fix: Fixed a race condition between plugin and add-ons.
v2.0.0 – (2017-08-04)
- New: Ability to filter logs by date.
- New: Ability to filter logs by name.
- New: Complete rewrite for better performance.
- Docs: Dropped support for PHP 5.2
v1.9.1 – (2016-07-02) – (Dev time: 0.5 hour)
- Fix: Only allow users with
manage_optioncapability to view email content.
v1.9 – (2016-06-19) – (Dev time: 6 hours)
- Fix: Improve the performance of count query (issue #33)
- Docs: Added access modifiers to class methods
- Docs: Removed unused array_get() method
- Docs: Inline documentation added
- Tests: Added Unit tests
v1.8.2 (2016-04-20) – (Dev time: 1 hour)
- Tweak: Log all emails from the TO field. Earlier the plugin was logging only the first email
- Fix: Fixed issues in parsing reply-to and content-type headers
v1.8.1 (2015-12-27) – (Dev time: 0.5 hour)
- Fix: Fixed the “Delete All Logs” issue that was introduced in v1.8
v1.8 (2015-12-26) – (Dev time: 5 hours)
- New: Added filters and actions for addons
- New: Added Resend Email Addon
- Tweak: Optimize for large number of logs
- Tweak: Use charset and collate that is defined in wp-config.php file
- Tweak: Format email content
- Tweak: Remove PHP4 compatible code
- Fix: Sanitize the delete email log url
v1.7.5 (2014-09-23) – (Dev time: 1 hour)
- Tweak: Remove PHP 4.0 compatibility code
- Tweak: Tweak the install code (issue #26)
- Fix: Fix a bug in the save user options function (issue #27)
v1.7.4 (2014-07-24) – (Dev time: 0.5 hours)
- Fix: Handle cases where
time_formatare empty (issue #23)
- Tweak: Remove excessive comments from include/class-email-log-list-table.php (issue #10)
v1.7.3 (2014-05-14) – (Dev time: 0.5 hours)
- Fix: Fixed a compatibility issue with wpmandrill plugin (issue #20)
v1.7.2 (2014-04-16) – (Dev time: 0.5 hours)
- Fix: Fix issue in register_activation_hook
v1.7.1 (2014-04-02) – (Dev time: 0.5 hours)
- Fix: Fix the issue that was preventing the tables to be created
v1.7 (2014-03-29) – (Dev time: 2.5 hours)
- Fix: Fix whitespace
- New: Add support for WordPress Multisite (issue #18)
- New: Add ability to delete all logs at once (issue #19)
v1.6.2 (2014-01-27) – (Dev time: 0.5 hours)
- Fix: Fix unexpected output while activating the plugin
v1.6.1 (2013-12-17) – (Dev time: 0.5 hours)
- Fix: Change
prepare_itemsfunction so that it adheres to strict mode
- Fix: Remove
screen_iconfunction call which is not used in WordPress 3.8
- New: Compatible with WordPress 3.8
v1.6 (2013-12-08) – (Dev time: 0.5 hours)
- New: Add a link to view the content of the email in the log screen
v1.5.4 (2013-09-21) – (Dev time: 0.5 hours)
- Fix issue in searching non-english characters
- Add addon screenshots
v1.5.3 (2013-09-14) – (Dev time: 0.5 hours)
- Fix issue in bulk deleting logs
v1.5.2 (2013-09-13) – (Dev time: 0.5 hours)
- Add the ability to override the fields displayed in the log page
- Add support for “More Fields” addon
v1.5.1 (2013-09-09) – (Dev time: 0.5 hours)
- Correct the upgrade file include path. Issue #7
- Fix undfined notice error. Issue #8
- Update screenshots. Issue #6
v1.5 (2013-09-09) – (Dev time: 10 hours)
- Rewrote Admin interface using native tables
v1.1 (2013-04-27) – (Dev time: 0.5 hour)
- Added more documentation
v1.0 (2013-04-17) – (Dev time: 0.5 hour)
- Added support for buying pro addons
v0.9.3 (2013-04-01) – (Dev time: 0.5 hour)
- Moved table name into a separate constants file
v0.9.2 (2013-03-14) – (Dev time: 0.5 hour)
- Added support for filters which can be used while logging emails
v0.9.1 (2013-01-08) – (Dev time: 0.5 hour)
- Moved the menu under tools (Thanks samuelaguilera)
v0.9(2013-01-08) – (Dev time: 1 hour)
- Use blog date/time for send date instead of server time
- Handle cases where the headers send is an array
v0.8.1 (2012-07-23) (Dev time: 0.5 hour)
- Reworded most error messages and fixed lot of typos
v0.8 (2012-07-12) (Dev time: 1 hour)
- Fixed undefined notices – https://wordpress.org/support/topic/plugin-email-log-notices-undefined-indices
- Added Dutch translations
v0.7 (2012-06-23) (Dev time: 1 hour)
- Changed Timestamp(n) MySQL datatype to Timestamp (now compatible with MySQL 5.5+)
- Added the ability to bulk delete checkboxes
v0.6 (2012-04-29) (Dev time: 2 hours)
- Added option to delete individual email logs
- Moved pages per screen option to Screen options panel
- Added information to the screen help tab
- Added Lithuanian translations
- Fixed a deprecation notice
- Added German translation (Thanks Frank)
- Added compatibility for MySQL 4 (Thanks Frank)
- Added compatibility for MySQL 4
- Initial Release