Bad news first – we’ve seen how to add content to any WooCommerce order email, however I did not specify that if you use the [products] shortcode that’s not going to work unfortunately. The reason behind this, in plain English, is that… it just doesn’t work, and it outputs a weird list of “Sale!” list items (see screenshot below)!
So, I want to fix this, and find a WooCommerce email-compatible way to show a grid of products based on a list of product IDs (for example, the list of related products based on the ordered items), and make sure I can actually see product images, titles, prices and a link. Enjoy!
Continue reading WooCommerce: Display Product Grid @ Order Emails e.g. Related Products
WooCommerce order emails customization is possibly the most wanted feature for WooCommerce store owners and developers right now. It is very difficult to edit the default templates and it’s no surprise there are many email customizer plugins out there.
We’ve already seen how to add content to specific WooCommerce emails, how to add custom email CSS, how to display product images, and more, but today I’d like to teach you a quick workaround to edit the default email text strings such as the initial greeting (‘Hi Mary,‘) or other sentences (‘We have finished processing your order.‘, ‘The following note has been added to your order:‘, ‘Just to let you know — we’ve received your order, and it is now being processed:‘, etc.).
With “edit”, of course, I mean either change the text, or completely hide it. So, let’s see how it’s done. Enjoy!
Continue reading WooCommerce: Edit Text Content @ Order Emails
By default, WooCommerce does not display the product thumbnail inside the order emails.
With this little trick, however, you can revert this default behavior and indeed show images beside their product name inside the email order item table. Enjoy!
Continue reading WooCommerce: Show Product Image @ Emails
The goal of marketing automation is to help you save on effort. However, sometimes it comes at the price of poorly targeted campaigns and half-baked marketing content, which can be outright damaging to your business.
The other problem with most of WooCommerce marketing automation tools is that they have a one-off approach to marketing that aims to get as much as possible from one user interaction – during checkout, for example – without providing for loyalty or retention. This goes against the golden rule of marketing, where your biggest asset is your leads and customers and your biggest mission is to retain them.
The solution is to use a omni-channel marketing approach, where a central tool collects and enriches user behavior and history in a unified profile and then uses that profile to deliver relevant campaigns across all user touchpoints.
This ensures more harmonized marketing, a seamless experience for your users and eventually more trust and engagement with your brand. These are all the ingredients you need to increase the loyalty lifetime value of your users and customers.
Continue reading WooCommerce: 4 Ways to Grow Your Sales With Omni-Channel Marketing
How annoying is the fact you can only resend the “New Order Notification” from the single order admin page? What if you’re testing out and customizing email templates, and need to email yourself the “processing” or the “completed” notification, without having to place a new test order or switching order status twice to re-trigger the notification?
Well, today we will see how to add a “Resend whatever email” function under the “order actions” on the single order edit page. Of course, make sure you switch the billing email to yours, otherwise the customer will get these emails and not you. Enjoy!
Continue reading WooCommerce: Resend Any Order Email
This is a cool customization that can come useful for WooCommerce store admins, especially when they do manual order status changes via the Orders admin page.
As you know, each order status change triggers an order email (“processing”, “completed”, “on-hold”, etc.), and sometimes the store manager doesn’t want to resend them after each edit.
In this quick tutorial, we will see how to add a checkbox to the single order edit page, so that emails are disabled as long as the checkbox is kept checked. Enjoy!
Continue reading WooCommerce: Disable Emails For a Single Order
This is a neat customization, directly requested by a WooWeekly subscriber who needed to literally show the remaining stock quantity for each ordered item to store managers, in order to have an immediate idea of low/zero stock quantities after each order.
If that’s not clear, simply take a look at the screenshot. In my dev site, I ordered a product that originally had stock quantity = 1. In the “New Order” email (thanks to the snippet below), beside the order item quantity of 1, there is also a “(0 remaining)” notice that clearly displays the item’s current stock level.
Cool, ha? So, let’s see how that’s coded. Enjoy!
Continue reading WooCommerce: Remaining Stock @ Order Emails
Running an online store is no easy feat.
You have to take care of order management, inventory, customer relations, production, marketing, and so much more.
A simple business process like invoicing doesn’t seem like it will take too much of your time, but it often ends up doing so.
That is why your best bet is to automate invoice generation. That way, you can attend to the revenue-generating activities that will let you take your business to the next level.
If you run a WooCommerce store, you know it comes with many useful functionalities but not invoicing automation. But the good news is you can choose from many great invoicing plugins available to do the heavy lifting.
We’ve done the legwork and prepared a list of free WooCommerce invoicing plugins you can use to put your invoice generation on auto-pilot.
Continue reading WooCommerce: How to Generate Invoices For Free
On a daily basis, you probably use drag-and-drop in a variety of interfaces. For instance, drag and drop your Gmail items to its category, upload files to WordPress media library, or organize your phone home screen apps.
While many page builder platforms come in to help you design your website with drag-and-drop, building WooCommerce transactional emails is still considered as a complex task.
By default, WooCommerce email settings only allow you to change basic color profiles and text. In order to customize further, you will have to modify the theme code.
If you are a non-techie and don’t want to crack the code between the scripts in wp-content/plugins/woocommerce/templates/emails/email-styles.php or so, using a drag-and-drop email builder framework is the best solution.
Continue reading WooCommerce: How to Customize Email Templates Without Coding
Sure, you can add content to a given WooCommerce transactional email such as the Customer Processing Order email. You can even edit the email subject, for example by adding the first name. No matter what you need, there are many cool snippets to customize default WooCommerce emails…
But what we haven’t seen yet is how to “attach a file” to a default WooCommerce Order email. It seems like a very much needed admin option, but there is nothing to achieve that in the WooCommerce dashboard. And maybe that is because it’s super easy to do that with a few lines of PHP. So, enjoy!
Continue reading WooCommerce: Attach File (PDF, etc.) To Emails
When SKU matters to the end user, displaying it in the Cart page, Checkout page, Thank you page, My Account View Order page and Order Emails under the item name is a must.
Ideal for B2B businesses and international brands, this simple customization can help you learn how to add any sort of content under the Cart/Checkout/Order item names. Simply use the same hook and try “getting” something different than SKU with this guide. Enjoy!
Continue reading WooCommerce: Show SKU @ Cart, Checkout, Order & Emails
The WooCommerce Email Settings allow you to add custom recipients only for New Order, Cancelled Order, Failed Order and all admin-only emails.
But what if you want to add an email recipient to a customer email e.g. the Completed Order one? For example, you need to send it to your dropshipper. Also, you might want to add a To: recipient, or instead a cleaner Cc: or safer Bcc:.
Either way, a simple snippet allows you to achieve that (and more, if you consider WooCommerce conditional logic). Enjoy!
Continue reading WooCommerce: Add To: Cc: Bcc: Email Recipients
WooCommerce emails come with the following hard-coded (argh!) greetings: ‘Thanks for shopping with us.‘, ‘Thanks for reading.‘, ‘We look forward to seeing you soon.‘, ‘We look forward to fulfilling your order soon.‘, ‘Thanks!‘, ‘We hope to see you again soon.‘ based on the specific email.
While having these greetings in the WooCommerce customer email footer may look nice and friendly, you should have the freedom to remove or edit them.
So, you have two choices: doing that via the email settings, or by “translating” those strings via PHP. Enjoy!
Continue reading WooCommerce: Hide “Thanks for shopping with us” @ Emails
This snippet consists of many WooCommerce tasks: setting up a “WordPress Cron Job” (i.e. schedule a hook that runs on a specific time interval), getting the WooCommerce completed orders from the database, and finally sending a simple email to the store admin.
Complex, but as usual you can simply copy/paste and re-adapt it to your unique specifications. For example, I’m using it to send a survey email to each customer who has placed an order. There are thousands of applications, so this is just the start. Enjoy! Continue reading WooCommerce: Send Email to Admin Every 3 Hours (Cron Job)
If you use custom WooCommerce order statuses, or wish to target an order status transition that is not default (e.g. when order goes from “Processing” to “Completed”, the Completed email triggers – but what if you want to target a transition from “Processing” to “Custom Status”?), sending custom emails is quite complex.
First of all, they won’t show under WooCommerce > Settings > Emails (unless you code it, true) – second, no email will trigger. So, how do they do it?
Continue reading WooCommerce: Send a Custom Email on Order Status Change
There are times when you sell free products to give customers access to a membership, an online course, or for other reasons. In this cases, you might not want to send them the “Order Completed” email, as the follow-up work is done by your email marketing software or they are automatically redirected to the resource upon checkout.
Of course, you definitely want to keep the “Order Completed” emails for orders that are not $0. Unfortunately, the method suggested by WooCommerce which “unhooks the emails” cannot be used together with a conditional check (in our case we need to verify if the Order total is $0), so a workaround is needed. Here’s the fix.
Continue reading WooCommerce: Disable Customer Order Email for Free Orders
There is a slightly annoying thing on the WooCommerce Thank-You Page and WooCommerce emails. Users looking at the order table can actually click on the Products they just purchased and abandon the page before taking the action you want them to take (see image below).
So, I coded a simple PHP snippet to remove such links. As usual, 1 line of code is more than sufficient:)
Continue reading WooCommerce: Remove Link to Product @ Order Table
Unlike your WordPress theme, you can’t just add CSS to your style.css in order to customize the look of the WooCommerce emails.
This handy PHP snippet is therefore the only viable solution. It’s a little tricky but once you get the idea, adding CSS to Order Emails is a breeze.
Continue reading WooCommerce: Add CSS to Order Emails
WooCommerce Customizers: the Visual Hook Guide is back 🙂
Here’s a visual HTML hook guide for the WooCommerce Emails. This visual guide belongs to my “Visual Hook Guide Series“, that I’ve put together so that you can find WooCommerce hooks quickly and easily by seeing their actual locations.
Let me know in the comments if this resource it’s helpful and how! Enjoy 🙂
Continue reading WooCommerce Visual Hook Guide: Emails
Let’s imagine you want to add a custom checkout field (and not an additional billing or shipping field) on the WooCommerce Checkout page. For example, it might be a customer licence number – this has got nothing to do with billing and nothing to do with shipping.
Ideally, this custom field could show above the Checkout page order notes – right after the shipping form. It will feature a label, an input field, and will be required.
So, here’s how you do it – hope it helps you understand that anything is possible with WooCommerce!
Continue reading WooCommerce: How to Add a Custom Checkout Field