如何在WooCommerce的结账页面禁用特定日期的送货?

时间:2019-12-17 作者:Brajmohan Kumar

我在我的电子商务网站上使用WooCommerce,在我的发货字段中,借助官方WooCommerce插件“checkout field Editor”,我添加了一个自定义的签出字段“Delivery Date Picker”。

插件链接:https://woocommerce.com/products/woocommerce-checkout-field-editor/

我的网站:https://www.millionroses.com.au/

  • Checkout Field Date Picker Frontend Demo

  • Checkout Field Date Picker Backend Demo

  • 签出字段编辑器插件后端中没有选项来禁用特定日期或假日的传递。

    假设由于节假日;我想禁用12月25日、26日或1月1日的交货,那么如何禁用这些特定日期的交货日期?

    提前感谢您!

    1 个回复
    最合适的回答,由SO网友:Senior WordPress Developer 整理而成

    在使用插件时,需要使用挂钩覆盖插件功能。因此,在您的情况下,我们需要覆盖主题中的日期选择器功能functions.php 文件

    unavailableDates 是一个变量,您需要在其中传递需要禁用的日期,其他功能代码指示您需要销毁当前日期选择器功能,并根据您的要求使用重新启动日期选择器功能wp_footer

    下面是我创建的代码片段,它完全符合逻辑。

    add_action(\'wp_footer\', \'wp_footer_callback\');
    function wp_footer_callback(){
    ?>
    <script type="text/javascript">
        jQuery(document).on(\'ready\', function(){
            var unavailableDates = ["17-12-2019", "19-12-2019", "15-12-2019"];
            function unavailable(date) {
                dmy = date.getDate() + "-" + (date.getMonth() + 1) + "-" + date.getFullYear();
                if (jQuery.inArray(dmy, unavailableDates) == -1) {
                    return [true, ""];
                } else {
                    return [false, "", "Unavailable"];
                }
            }
            jQuery(".checkout-date-picker").datepicker("destroy");
            jQuery(".checkout-date-picker").datepicker({
                dateFormat: \'dd MM yy\',
                beforeShowDay: unavailable
            });
    
        });
    </script>
    <?php   
    }
    
    如果没有帮助,请告诉我。

    相关推荐

    如果固定链接中没有index.php,我会在整个站点中获得404

    正如标题所说,当我在管理中更改永久链接时,我的所有页面都返回404(主页除外)。我必须包括在内index.php 作为所有不同路径的起点。如果我包括在内,所有的路径都很好index.php.例如:自定义结构:/index.php/%postname%/%day%/ 将在我浏览我的网站时工作。自定义结构:/%postname%/%day%/ 将不工作(主页除外)。服务器上已启用mod\\u rewrite:$ sudo a2enmod rewrite Module rewrite already e