How to Disable WooCommerce Completed Order Emails
One of the best features of WooCommerce is how you can keep your customers informed of their orders. There are multiple ways, from your store’s interface, that a customer can pull up current and previous order information. In addition to the store’s theme, WooCommerce can communicate order information to your customers via email. This includes email notifications about completed orders. Unfortunately, there’s no easy way to turn off these emails. Today we’ll walk you through how to disable WooCommerce completed order emails on your own.
Why remove WooCommerce completed order emails from your store? Well, for starters, not everyone wants to receive notifications by email. In addition, email is notoriously unreliable and that is especially true when emails are being sent by WordPress. Sometimes it’s easier to disable a feature than to constantly have to troubleshoot it.
So, let’s go through the steps necessary to turn off WooCommerce completed order emails. We’ll go through this piece-by-piece so you can do it yourself correctly. Then, in the end, we’ll show you a simpler and faster alternative way by purchasing our plugin.
How to Turn Off WooCommerce Completed Order Emails with Code
You’re going to have to write some very simple PHP code to make this work. This code will disable completed order emails from being sent by WooCommerce. We’ll walk you through the correct way to add code to a WooCommerce store without ruining your site’s theme or function.
Warning! Please make a complete and total backup of your store before proceeding. This means backing up your site’s files (plugins, theme, and uploads) and the database as well. It’s not uncommon for people to make mistakes when attempting to add code to a WordPress site. You’ll be thankful you have a way to restore your store in case of a disaster that disables it.
Create a Child Theme
The first step in this process is to create a child theme. A child theme is the safest way to add or modify code in a WordPress or WooCommerce theme. In short, a child theme loads after another theme (called the parent) has loaded. The child theme can then independently execute code and loads templates using the parent theme as a base.
When the parent theme receives an update, the child theme’s code is not touched. Therefore, anything you do in a child theme will always persist and never be lost. Adding or changing code directly in a parent theme means those changes are overwritten during the next update.
This isn’t a tutorial on how to make a WordPress child theme though. You can find a lot of very helpful tutorials online and, possibly, a pre-made child theme for your current theme from its developer.
Add Code to the Child Theme
With your child theme made, it’s now time to add some custom PHP code. Every WooCommerce theme should have a file called functions.php and your child theme is no exception. Create the file, if it doesn’t already exist, and open it in a text editor. Then copy and paste the following code into the file:
add_action('woocommerce_email', 'my_disable_emails_completed_orders', 10);
remove_action('woocommerce_order_status_completed_notification', [$email_class->emails['WC_Email_Customer_Completed_Order'], 'trigger']);
Save the functions.php file when you are finished adding the above piece of code.
Getting confused? Making child themes and adding PHP code isn’t for everyone. In fact, most people tap out at this point. If you would prefer to have this done for you we have a solution. Learn how our plugin can help you save time.
Upload the Child Theme
Your child theme’s files are ready. It’s time to get the theme onto the server hosting your WooCommerce store. The best way to do this is directly inside of the WordPress admin area. First, compress your child theme into a .zip file before uploading. Then, log in to your WordPress admin and head to the Appearance option of the menu, and upload your file through the Themes section.
Alternatively, you can upload your child theme directly to the server using an FTP program. This is an option for more technical users. You’ll need an FTP program and your server’s login credentials. Most web hosting providers will provide documentation and support staff to help you to care of this if you want to go in this direction.
Activate the Child Theme
Now that you have uploaded the child theme it is time to turn it on. In WordPress terms, this is called “activating” the theme. Go back to the WordPress admin menu, back to the Appearance option, and back to Themes again.
If you successfully uploaded your child theme, it should now appear on the list of choices. If you don’t see your theme then the upload didn’t work. Try again until your child theme finally shows up. When it’s available, there will be a button to activate the theme. Pressing that button will make your child theme the active theme on your WooCommerce-powered store.
Activating the theme will immediately make your code to disable WooCommerce completed order emails begin to work. If the emails are still sent or, even worse, your store is no longer functional, there was a problem with your code. Go back and look for errors. Make any changes, compress the child theme, upload it again, and activate it one more time. Repeat this process until you have solved the issue and the code works correctly.
You’re all done! You made a WordPress child theme, added custom PHP code to it, uploaded, and activated it on your store. Of course, there is a much easier way to handle all of this. You can simply use our plugin and turn off these emails (and other features) with the click of your mouse.
Remove WooCommerce Completed Order Emails the Easy Way
We have built a plugin that lets you turn off WooCommerce completed order emails from your site.
Purchasing and installing our plugin is simple. You won’t need to make a child theme. You certainly won’t have to worry about using a text editor or adding code. And there’s no need to upload and test your code to make sure it’s working properly. All you need to do is install our plugin and you’re done. Never installed a plugin before? Don’t worry. You will be emailed step-by-step instructions after you complete your purchase. The whole thing can be done in less than a minute.
As we said, all you do is install and activate our plugin. No further steps are required. Our plugin immediately disables the sending of completed order emails. This plugin has no settings for you to deal with.
Your plugin purchase comes with:
- 90 days of support. Get help with your plugin up to three months after purchase.
- No license keys or yearly subscriptions. Pay $14 once.
- Unlimited installations. Install the plugin on as many sites as you want.
We offer a 14-day money-back guarantee. Get a full refund if you are unhappy with our plugin or if it doesn’t meet your expectations.