WooCommerce offers the ability to configure a sale price with each product. When you’re having a big sale you don’t want to spend days configuring the sale prices in each of the products you sell. Instead you want to fulfill all those sweet orders coming in!
In this post I’m showing you a couple different ways on how you can more easily setup a category or store wide sale. For the examples in this post I’ll be assuming that the prices will be decreased with the same percentage.
Bulk Editing Sale Prices in WooCommerce
The first method is the most straight forward. Using the WordPress/WooCommerce Core functionality to bulk edit products. If you’re not familiar with this, you can go over to the Products > All Products page and at the left top of the page there is a ‘Bulk actions’ dropdown.
If you want to apply this sale (discount) only to a specific category you can filter by category here as well.
Make sure to select all the products here. The downside is that if you have a ton of products it will be limited to what is displayed at the current table page. Luckily it is possible to increase the amount of products displayed per page.
Side note: be aware that loading many products can be a resource heavy process. Loading times will likely increase, and your server can time-out when loading too many products without the proper server infrastructure.
If you have too many products to all load at once you may have to repeat the process to setup prices for the products per page. Or skip ahead further in this post to see how you can setup a sale without having to edit all the products.
Bulk Editing the Sale Price
Now that you’ve got all the products, select them all and use the ‘Edit’ option in the ‘Bulk actions’. A new section appears where you can make a lot of different changes to the selected products. In this case we’re of course looking at the ‘Sale price’ part.
Here you have a few different options to choose from. The ‘Set to regular price decreased by (fixed amount or %)’ makes most sense to me to use. Configure the decrease you’d like to apply for the products and press ‘Update’. This process may take a bit as WooCommerce will go through each product to push the changes through.
When editing a individual product there is the option to schedule the sale price from or between dates. The downside of bulk editing with this method is that it is not possible to schedule the sale price beforehand.
Using Advanced Pricing for a Category or Store Sale
Of course I wouldn’t leave you hanging without offering an additional solution to certain limitations within WooCommerce. This second method of of configuring sales with the Advanced Pricing for WooCommerce plugin offers a lot more ease and flexibility. Its perfect if you want more control when it comes to setting up sale prices and scheduling a big sale.
The Advanced Pricing plugin has a conditional system, meaning you can configure and combine a multitude of conditions to configure everything exactly to your requirements.
To get started, after installing the plugin you’ll be able to configure pricing rules for individual products, or for the use-case in this post, global pricing rules. Head over to the newly added WooCommerce > Settings > Pricing section. In here you’ll see all your existing pricing rules, and of course you can add new ones.
When adding a new Advanced Pricing rule you’ll see two sections. The section at the top contains the conditions; when this pricing rule should be applied. At the bottom you can configure the action to be taken, the price change to be applied.
Here’s an example for giving 30% off on all products in the T-shirts category, and 60% off all Hoodies.
With the ‘Date’ conditions we’re making sure these price action is only applied between these dates, and with the ‘Category’ condition we target each category individually. Leave this condition out if you don’t want to target a specific category.
In case you want to target multiple categories, you can easily duplicate a ‘OR’ condition group, or add a new one.
I hope this post helped you setup your next sale. Let me know in the comments if you have any questions!