Sometimes, just like physical stores, your WooCommerce website needs to go on holiday! This snippet does the following on every WooCommerce page.
- disable cart
- disable checkout
- display a custom message
// Trigger Holiday Mode
add_action ('init', 'kpry_woocommerce_holiday_mode');
// Disable Cart, Checkout, Add Cart
function kpry_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', 'kpry_wc_shop_disabled', 5 );
add_action( 'woocommerce_before_cart', 'kpry_wc_shop_disabled', 5 );
add_action( 'woocommerce_before_checkout_form', 'kpry_wc_shop_disabled', 5 );
}
// Show Holiday Notice
function kpry_wc_shop_disabled() {
wc_print_notice( 'Our Online Shop is Closed Today :)', 'error');
}