在WooCommerce结帐页面上强制执行运输方法字段



我敢肯定,那里有很快的代码可以解决此问题,但是我很难找到它。

我有一个WordPress/WooCommerce网站设置,并在WooCommerce的运输设置中使用WooCommerce Shipping Pro带有桌面插件来指定交货费用以及本地提货选项。

这一切都很好,但是遇到了一个小问题。

在结帐页面上 - 如果未选择运输方法,但所有其他字段都已填写,它仍然允许我单击付款按钮并被带到付款网关。

因此,我正在遵循一些代码,以确保已选择运输方法或将运输方法作为强制性字段。因此,如果未选择运输方式,客户点击付款时,将不允许他们继续并标记警告。

链接到网站:https://larchcottage.co.uk/

以下代码将在结帐页面上输出错误消息,如果提交订单时未选择运输方法:

// Validate shipping method fields and returning an error if none is choosed
add_action( 'woocommerce_checkout_process', 'shipping_method_validation', 20 );
function shipping_method_validation() {
    if ( ! isset( $_POST['shipping_method[0]'] ) ){
        wc_add_notice( __( "You need to choose your a shipping option.", "woocommerce" ), 'error' );
    }
}

代码在您的活动子主题(或活动主题(的function.php文件中。测试并有效。

最新更新