Здравствуйте ребята! Пишу сюда так как перелопатил уже пол сети в поисках решения проблемы.
У меня есть сайт на Woocommerce под доставку еды, появилась необходимость ограничить заказы с 01:00 до 09:00
Нашёл разные плагины в которых ты можешь задать время работы магазина но в формате от 00:00 до 24:00 а мне нужно с 09:00 до 01:00
Также нашёл один скрипт который позволяет установить часы работы в фале functions.php но я никак не могу кастомизировать его под нужное мне время работы
Я буду оочень признателен если поможете решить даную задачу
Вот собственно сам скрипт:
// Utility conditional funtion for store open hours (returns boolean true when store is open)
function is_store_open() {
// Set Your shop time zone (
http://php.net/manual/en/timezones.php)
date_default_timezone_set('Europe/Kiev');
// Below your shop time and dates settings
$start_time = mktime('09', '00', '00', date('m'), date('d'), date('Y')); // 10:00:00
$end_time = mktime('01', '00', '00', date('m'), date('d', strtotime($date .' +1 day')), date('Y')); // 01:00:00
$now = time(); // Current timestamp in seconds
return ( $now >= $start_time && $now <= $end_time ) ? true : false;
}
// Disable purchases on closing shop time
add_filter( 'woocommerce_variation_is_purchasable', 'disable_purchases_on_shop', 10, 2 );
add_filter( 'woocommerce_is_purchasable', 'disable_purchases_on_shop', 10, 2 );
function disable_purchases_on_shop( $purchasable, $product ) {
// Disable purchases on closing shop time
if( ! is_store_open() )
$purchasable = false;
return $purchasable;
}
// Cart and checkout validation
add_action( 'woocommerce_check_cart_items', 'conditionally_allowing_checkout' );
add_action( 'woocommerce_checkout_process', 'conditionally_allowing_checkout' );
function conditionally_allowing_checkout() {
if ( ! is_store_open() ) {
// Store closed
wc_add_notice( __("
The Store is Closed… Purchases are allowed from
09
:00 AM to
01
:00
A
M
"), 'error' );
}
}
add_action( 'template_redirect', 'closing_shop_notice' );
function closing_shop_notice(){
if ( ! ( is_cart() || is_checkout() ) && ! is_store_open() ) {
// Store closed notice
wc_add_notice( __("
The Store is Closed… Purchases are allowed from
09
:00 AM to
01
:00
A
M
"), 'notice' );
}
}