У меня есть следующие варианты доставки:
- зона доставки 1: доставка пн-пт и в выходные
- зона доставки 2: доставка только в выходные
- забрать для обеих зон
I На основе Включение средства выбора даты в полях оформления заказа Woocommerce код ответа, я использую его для своей кассы WooCommerce page:
function enabling_date_picker() {
// Only on front-end and checkout page
if( is_admin() || ! is_checkout() ) return;
// Load the datepicker jQuery-ui plugin script
wp_enqueue_script( 'jquery-ui-datepicker' );
wp_enqueue_style('jquery-ui', "https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/themes/ui-lightness/jquery-ui.css", '', '', false);
}
// Add custom checkout datepicker field
add_action( 'woocommerce_review_order_before_payment', 'datepicker_custom_field' );
function datepicker_custom_field($checkout) {
$datepicker_slug = 'toimituspäivä';
echo '<div id="<h3>Valitse toimitus- /noutopäivä</h3">';
woocommerce_form_field($datepicker_slug, array(
'type' => 'text',
'class'=> array( 'form-row-first my-datepicker'),
'label' => __('<h3>Valitse toimitus- /noutopäivä</h3'),
'required' => true, // Or false
), '' );
echo '<br clear="all"></div>';
// Jquery: Enable the Datepicker
?>
<script language="javascript" id="kaikki">
jQuery( function($){
var a = '#<?php echo $datepicker_slug ?>';
$(a).datepicker({
dateFormat: 'yy-mm-dd',
minDate: '+3d' // ISO formatting date
});
if(jQuery('.contactForm').length){ jQuery(function($){ $.datepicker.regional['fi'] = { closeText: 'Sulje', prevText: '«Edellinen', nextText: 'Seuraava»', currentText: 'Tänään', monthNames: ['Tammikuu','Helmikuu','Maaliskuu','Huhtikuu','Toukokuu','Kesäkuu', 'Heinäkuu','Elokuu','Syyskuu','Lokakuu','Marraskuu','Joulukuu'], monthNamesShort: ['Tammi','Helmi','Maalis','Huhti','Touko','Kesä', 'Heinä','Elo','Syys','Loka','Marras','Joulu'], dayNamesShort: ['Su','Ma','Ti','Ke','To','Pe','Su'], dayNames: ['Sunnuntai','Maanantai','Tiistai','Keskiviikko','Torstai','Perjantai','Lauantai'], dayNamesMin: ['Su','Ma','Ti','Ke','To','Pe','La'], weekHeader: 'Vk', dateFormat: 'dd.mm.yy', firstDay: 1, isRTL: false, showMonthAfterYear: false, yearSuffix: ''}; $.datepicker.setDefaults($.datepicker.regional['fi']); }); }
});
</script>
<?php
}
Я хотел бы показать разные представления datepicker в зависимости от того, какой вариант доставки выбран:
Выбрана зона 1 -> доступны все дни (мин. +3 дня с сегодня) Выбрана зона 2 -> доступны только выходные.
Как мне это сделать?