在ACF日期选择器中禁用日期和星期。

问题描述 投票:0回答:1

我找到了很多关于(jQuery)Datepicker的话题,但是没有找到我想要的具体的ACF方式。

以下是一个完美的代码,可以在ACF中设置过去和未来的最大选择日期,但我需要两个更多的功能,但不知道如何实现它们。

我该如何实现。

  • 禁用特定的未来日期?
  • 禁用特定的星期几(如星期日)?

如何在下面的示例代码中实现?

function yl_date_picker_customizations() {
    ?>
    <script type="text/javascript">
        (function($) {

            // JS here

            acf.add_filter('date_picker_args', function( args, $field ){

                // do something to args
                args['minDate'] = '0';  //For example, "+1m +7d" represents one month and seven days from today.
                args['maxDate'] = '30';


                return args;

            });

        })(jQuery); 
    </script>
    <?php       
}

add_action('acf/input/admin_footer', 'yl_date_picker_customizations');
javascript datepicker advanced-custom-fields jquery-ui-datepicker acfpro
1个回答
0
投票

下面是工作代码:)

// Customization to reservation dates via datepicker
function yl_datepicker_customizations() {
    ?>
        <script type="text/javascript">
            (function($) {

                var arrDisabledDates = {};
                arrDisabledDates[new Date('06/19/2020')] = new Date('06/19/2020');
                arrDisabledDates[new Date('06/30/2020')] = new Date('06/30/2020');

                acf.add_filter('date_picker_args', function( args, $field ){

                    // do something to args
                    args['minDate']             = '0';  //For example, "+1m +7d" represents one month and seven days from today.
                    args['maxDate']             = '60';
                    args['beforeShowDay']       = function (date) {
                        var day = date.getDay(),
                        bDisable = arrDisabledDates[date];
                        if (bDisable) return [false, '', '']
                        else return [(day != 4) && (day != 2)]
                    }

                    return args;

                });

            })(jQuery);

        </script>
    <?php       
}

add_action('acf/input/admin_footer', 'yl_datepicker_customizations');
© www.soinside.com 2019 - 2024. All rights reserved.