There may be different reasons for you to stop taking orders from your WooCommerce powered online store for sometime..It can be any one of them.
- You/Your staff is on vacation
- Receiving too many orders unexpectedly
- Revamping physical store
- You/Your staff fallen sick
- or due to any other.
You can disable i.e. stop taking orders from online WooCommerce store for sometime to coop up with the shipping work.
Unfortunately there is no straight option in WooCommerce to handle this situation. Fortunately there are some workarounds to make this happen.
The below methods are to disable cart, checkout and show a little notice on every WooCommerce page (shop, product page, category page etc.).
You can do that in 2 ways.
- Through small code snippet
- By installing a plugin
Through small code snippet
/**
* @snippet WooCommerce Holiday/Pause Mode
* @how-to Get CustomizeWoo.com FREE
* @sourcecode https://businessbloomer.com/?p=20862
* @author Rodolfo Melogli
* @testedwith WooCommerce 3.5.1
* @donate $9 https://businessbloomer.com/bloomer-armada/
*/
// Trigger Holiday Mode
add_action ('init', 'bbloomer_woocommerce_holiday_mode');
// Disable Cart, Checkout, Add Cart
function bbloomer_woocommerce_holiday_mode() {
remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart', 10 );
remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 30 );
remove_action( 'woocommerce_proceed_to_checkout', 'woocommerce_button_proceed_to_checkout', 20 );
remove_action( 'woocommerce_checkout_order_review', 'woocommerce_checkout_payment', 20 );
add_action( 'woocommerce_before_main_content', 'bbloomer_wc_shop_disabled', 5 );
add_action( 'woocommerce_before_cart', 'bbloomer_wc_shop_disabled', 5 );
add_action( 'woocommerce_before_checkout_form', 'bbloomer_wc_shop_disabled', 5 );
}
// Show Holiday Notice
function bbloomer_wc_shop_disabled() {
wc_print_notice( 'Our Online Shop is receiving lot of orders from few days, we are unable to serve you on-time. Hence we are not taking new orders for sometime. Thanks for your co-operation.', 'error');
}
Where to add this code
You need to add the above code at the bottom of (before ?> if it is there) your child theme’s functions.php (ALWAYS use Child theme for customization like this).
Put your custom notice in wc_print_notice, which will be displayed to customers on the website.
Please take backup of functions.php file before doing any changes to it.
Source: BusinessBloomer
By Installing plug-in
If you’re not comfortable using code, there is one plug-in called Woo Store Vacation. Which does the same job of disabling the WooCommerce store temporarily.
The plug-in is available for free in the WordPress repository. Get Woo Store Vacation here.
Go to your Dashboard –> Plug-ins –> Add new –> Search for “Woo Store Vacation” and click on install.
Plug-in Setup
Once the plug-in is installed and activated.
Go to Dashboard –> WooCommerce –> Store Vacation
- Check the “Want to go vacation by closing my store publicly.
- Disable Purchase – Select this if you want don’t want to accept orders from customers.
- Start Date – From when you want to disable the WooCommerce store.
- End Date – Till when you want to disable the WooCommerce store.
- Text color – in the notice box
- Background color – in the notice box.
- Vacation Notice – You can input your custom message which will be displayed in the website for customers.
- and SAVE THE CHANGES.
With this plug-in you can even schedule the holiday dates (Holiday Start date and End date) in prior.
Please check the FAQS and screenshots in the plug-ins page mentioned above.
Warning:
Do not directly try the above in production live website, try first in Staging/Test/Development site before applying the changes in live website as a safe measure.
Take backup of the website prior doing any changes to restore in-case something goes wrong.
Hope it helps. Please share your thoughts in comments.