Email Text Customizer for WooCommerce

There are two standard emails built in to WooCommerce that are sent to a customer on a successful transaction.

The first is the Processing Order email. It is and sent automatically as soon as a payment goes through.

The second is the Completed Order email, and is sent manually by the site owner when he/she marks the transaction as complete in the back end, (which generally means when the goods are dispatched).

If you are happy with the standard text in those emails, then all is well.

If you want to change the text to suit your style or how your shop operates, then unfortunately, there is nothing in the WooCommerce admin page where you can change the body text of those emails.

If you google for how to do it, you will see reference to changing core templates and translation strings, all of which are more complicated than using the Email Text Customizer plugin.

With the plugin activated, there will be a new field where you can change the body text of the emails.

Test Your Checkout

I sometime test the checkout by temporarily changing the Stripe checkout to test mode and putting through a purchase.

It works, but being a manual process it depends upon my doing it – and when WordPress is updated or WooCommerce is updated, or some plugin or other that might interfere with another plugin is updated, do I test? No, I do not. Not every time. And that’s a problem.

Robot Ninja tests your checkout regularly to make sure everything is working.

As it says in its blurb;

Don’t wait days or weeks to hear from customers that your checkout isn’t working or waste the time manually checking your store. Schedule tests to run daily or weekly to save you time.
Select real products from your site to use in your tests. No more testing with dummy or $0 products or by having to create test coupons. And you are free to use actual products.

It visits the site and test products as a guest customer and also as a logged in user; it tries selecting all variation options if they exist; it adds the product to the cart; and it purchases the product using an available payment gateway (with priority on using Stripe).

Our store is connected to a fulfilment house that sends out the goods, and our system notifies the fulfilment house automatically when a customer orders a product.

When I test the checkout manually I temporarily disable the notification that is sent automatically to our fulfilment house when a customer purchases a product.

Then I re-enable notifications after I have completed the manual test.

So it’s a problem for us if the service is jumping around and testing different products, because our fulfilment house is going to be getting a lot of dummy notifications and think they are real orders.

Provided I can nominate the product that RobotNinja tests, I can set up a dummy product to be tested, and exclude it from the notifications that go to the fulfilment house.

But I have never thought to set up a dummy product to test, and exclude that from the notifications.

I would also hide the dummy product from the catalogue.

Hidden products are not visible to customers’ searches and do not appear in the shop page. So unless a ‘real’ customer knows the URL of the product, they will not find it.

Looking through the documentation I see that one can nominate a product or products to be tested.

Next thing: What happens with the payments that go through Stripe. What does Stripe think about these transactions? How does it work? I asked Support and this is the reply:

“If Stripe is used in Live mode they are treated like a normal transaction. Upon completion of an order we process a refund via the WooCommerce API and delete the order.

We also support Stripe in test mode using one of its fake card numbers they provide. You also have the option to disable “placing an order”. We complete the checkout up to the point of clicking the place order button but stop there.

We also support $0 products.

Basically there are a few different options depending on backend systems/costs/etc.

Now I need to think it through to make sure there isn’t a snag that I haven’t thought of yet. I’ll update this post when I have done that.

Sorting WooCommerce Products

Using the Gutenberg plugin on a blog is one thing: Using it on a WooCommerce site is another. So while I have been using Gutenberg since January 2018, it was only couple of months ago that I activated Gutenberg  on a WooCommerce test site.

I did it when the people at WooCommerce released the WooCommerce Gutenberg Products block plugin.  It was clear how to use Gutenberg to import product images into posts and pages.However, there was no ‘Gutenberg action’ on Product pages.

I thought it might be that the theme I was using was not yet G’berg compatible but it was the same on the 2017 theme, so I switched back.

I asked in the Facebook WooCommerce Help and Share group and was directed to what Mike Jolley said back in May:

Since WooCommerce is not optimised for the Gutenberg editor we’ve decided to keep the old editor for now so sites do not break when WordPress 5.0 is released. Products are not content focussed so using Gutenberg with our meta box placed awkwardly at the bottom is not ideal.

And back in February, Cladiu Lodromanean said:

It’s just temporary until we develop nice Gutenberg-compatible screens for Products/Orders/etc. When Gutenberg is merged into WP core and released we will be ready with the Products block in WooCommerce 3.4 but editing products and orders in Gutenberg will come in a future WooCommerce release.

It won’t be until next year that the people at WooCommerce will be working on using the block editor for products.Meanwhile, even on normal posts and pages, what you still cannot do is order the images with drag and drop. We are restricted to the old ordering system.

If you ask why drag/drop and the ability to move images around is important, look at it from the point of view of the site owner and a customer.

The site owner wants to present the products in the way he/she wants – maybe arranging by colour. And the customer wants to see the most relevant presentation according to the product.

The ‘old’ (current) ordering system allows site owners to list product images by:

  • default sorting (custom ordering + name)
  • Popularity (sales)
  • Average rating
  • Sort by most recent
  • Sort by price (asc)
  • Sort by price (desc)

You can change the order of display under custom ordering by going to WooCommerce > Settings in your WordPress admin. On the Products tab, the Display settings should be set to Default sorting (custom ordering + name). If it is not, then change it to that first.

Then, in the Products admin panel, select Sorting (see the image at the top of this article) and then drag and drop your products in the order that you’d like.

If you have got a lot of products, then it’s not realistic to drag a product up or down hundreds of rows to where you want to place it.

An alternative is to order the products in the Quick Edit menu by changing the order value. The default is zero. Change the numbers and the custom order will display the lower numbers first (negative numbers are allowed).

You can also edit the order value in the Product Data > Advanced tab on the product edit page.

Sounds good, but you have to hold the numbers in your head while you sort them.

There’s a bigger problem though, and that is that custom sorting is applied against all items and not against separate categories, and in all places where the products show.

That may not be what you want. You may want products to show up in a different order in different sections of your site.

For example, you may want to showcase eight products in a blog post and you may want to arrange them in a specific arrangement so that the order complements your text. You can do that, but then that order will apply everywhere the products show.

Only being able to arrange products by date uploaded or the ones with the most sales, etc. is a limitation that doesn’t fit with what store owners want and need. And custom ordering has its own shortcomings.

I asked James Koster of WooCommerce about the capability to drag images around. He replied saying that eventually drag/drop will be a feature, but as it had only recently been added to Gutenberg core,  they are yet to work on their own implementation for the products block. 

Roll on the drag and drop capability. It cannot come soon enough.