Stop Emails

Description

Stops outgoing emails sent from WordPress. This plugin stops
outgoing emails generated by WordPress core, plugins, and themes.
Emails sent using the wp_mail() function, will not be sent.
In the case where an author does not use the recommended wp_mail()
function and instead sends the email using another mechanism, an email will
still be sent.

This plugin allows you to suspend sending emails when doing development work.
Any calls to wp_mail() will fail silently. WordPress
will operate as if the email were sent successfully
but no email will actually be sent.

On the admin menu page Settings > Stop Emails, there is the option
to log all emails to the PHP error log. By default this logging is
disabled.

NOTE: If using the PHP mail() function directly, this
plugin will NOT stop the emails.

Built by Sal Ferrarello / @salcode

Screenshots

  • When the plugin is running, there will be a warning on the backend of the website.
  • Lies! The email wasn't really sent, we're running Stop Emails

Installation

  1. Install plugin from WordPress plugin repository https://wordpress.org/plugins/
  2. Activate Stop Emails through the ‘Plugins’ menu in WordPress.

Manual Installation

  1. Upload the entire stop-emails directory to the /wp-content/plugins/ directory.
  2. Activate Stop Emails through the ‘Plugins’ menu in WordPress.

mu-plugin Installation

  1. If the directory wp-content/mu-plugins/ does not exist, create it.
  2. Upload the single file stop-emails.php to the wp-content/mu-plugins/ directory

FAQ

Where do the emails go?

The emails are lost forever.

Why are some of my emails still being sent?

Most likely, this is due to a plugin you have running.
There are two different things the plugin could be
doing to cause emails to still be sent.

  1. The plugin is overriding our overriding of the sending mechanism.
  2. The plugin is calling the PHP function mail() directly.

Unfortunately in either of these cases, this plugin will not be able to stop
the email.

I want to log the emails that are stopped

You can enable logging of stopped emails on the
admin menu page Settings > Stop Emails.

Emails will be logged to your PHP error log.

Why would I want install in the mu-plugins directory?

Activating a plugin normally requires logging into the site.
Installing the file in the mu-plugins directory allows you to
activate the plugin without logging in. This can be
helpful when setting up an existing site locally.

Where can I report a bug?

Please report bugs at https://github.com/salcode/stop-emails/issues

Reviews

Great turn-key solution

Worked out of the box for me on a VPS; we were developing a system in parallel to an existing site and someone else installed this instead of using our existing process. I learned of a new plugin and a new way of doing things for WP. Very impressed.

Works Great!

This works great. I had used it months ago for something else. But I needed to migrate a Ning.com website with members into a new Buddypress site. I had to make sure the members were not emailed or pinged. This plugin stopped all outgoing emails to all the members.

YOU ARE A LIFE SAVER

after hours of going through a plugin’s source code in an attempt to stop the plugin from sending emails, I found this plugin and not only does it stop the plugin from sending out emails, but also does not interfere with the a auto responding email campaign (I.E. MailChimp, Constant Contact,) on the backend so my client’s needs are met and my job got so much easier. FROM THE BOTTOM OF MY HEART, THANK YOU FOR THIS MAGNIFICENT PLUGIN, AND YOU ARE QUITE TALENTED TOO! YOU HAVE A GIFT, EMBRACE IT, YOU DESERVE IT FOR YOUR GENIUS!

Excellent!

Perfect! I install this on all my development platforms and it avoids sending out emails to real clients. Well done!

Read all 8 reviews

Contributors & Developers

“Stop Emails” is open source software. The following people have contributed to this plugin.

Contributors

“Stop Emails” has been translated into English (UK). Thank you to the translators for their contributions.

Translate “Stop Emails” into your language.

Interested in development?

Browse the code or subscribe to the development log by RSS.

Changelog

1.2.0

  • Add filter to force BuddyPress to use wp_mail() rather than its own BP_PHPMailer class

1.1.0

  • Add Italian translation (it_IT), thanks to Andrea Gherardi https://twitter.com/ilghera_TP

1.0.1

  • No changes to code functionality
  • “Tested Up To:” version bump to 4.2
  • Update to readme.txt to more clearly communicate plugin functionality
  • Version bump to 1.0.1

0.8.0

  • Overhaul of plugin includes: fixing issue with plugin not stopping emails, moving to a class structure, changing email stopping
    behavior to use the same technique as WordPress core tests, improved inline documentation,
    addtion of phpunit tests. Introduces a breaking change with https://github.com/salcode/stop-emails-logger

0.7.1

  • Added check for supporting files before loading them. Since the primary functionality
    is in stop-emails.php, adding this check allows stop-emails.php to be used in the
    mu-plugins/ directory (previously, it would throw warnings)

0.7.0

  • Added filter fe_stop_emails_log to allow other logging of blocked emails

0.6.2

  • “Tested Up To:” version bump to 4.0
  • Add plugin icons

0.6.1

  • “Tested Up To:” version bump to 3.9
  • Add Settings link to plugin page

0.6.0

  • Add admin settings page with option to enable logging of stopped emails to
    PHP error log

0.5.0

  • Correct breaking change

0.4.0

  • Add Spanish translation (es_ES), thanks to Andrew Kurtis from webhostinghub.com

0.3.0

  • Added support for localization

0.2.0

  • Added filter fe_stop_emails_log_email for $log_email value, which allows a programmer to add code to
    log the blocked emails in the php_error.log
  • Renamed functions and classes to follow WordPress standards

0.1.0

  • First release