在Woocommerce结帐页面中设置唯一的验证错误通知

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Woocommerce结帐页面中设置唯一的验证错误通知相关的知识,希望对你有一定的参考价值。

如果必填字段为空,Woocommerce结帐页面会显示个别错误。通常,如果所有字段都为空,则会显示这些空字段的所有错误: - 名字是必填字段 - 姓氏是必填字段 - 街道地址是必填字段 - 城镇/城市是必填项目 等等…

如果所有必填字段都为空,是否可以只显示一个错误?像“错误:所有字段都是空的。请填写所有必填字段以下订单。“如何实现这一目标?

结帐页面

Checkout page

答案

要在Woocommerce结帐页面中设置唯一的验证错误通知,您将使用以下内容:(代码主要来自您的上一个问题,对社区有用。只需更改为官方函数参数代码)

add_action( 'woocommerce_after_checkout_validation', 'checkout_validation_unique_error', 9999, 2 );
function checkout_validation_unique_error( $data, $errors ){
    // Check for any validation errors
    if( ! empty( $errors->get_error_codes() ) ) {

        // Remove all validation errors
        foreach( $errors->get_error_codes() as $code ) {
            $errors->remove( $code );
        }

        // Add a unique custom one
        $errors->add( 'validation', 'Please fill in all required fields to place order.' );
    }
}

代码位于活动子主题(活动主题)的function.php文件中。经过测试和工作。

enter image description here

相关:Set a unique validation error notice in Woocommerce My Account Addresses and Account Details

另一答案

您需要禁用当前错误检查并为结帐页面编写自定义javascript,以便将所有错误放在一条消息中。

没有原生的WooCommerce功能可以实现这一目标。

要删除验证,请转到checkout.php模板并从html字段中删除required属性。

结帐this link关于如何将HTML和javascript添加到结帐页面。

另一答案

hHi,您可以从结帐字段中删除验证并添加您的:

这是钩子:

add_filter( 'woocommerce_default_address_fields' , 'filter_default_address_fields', 20, 1 );

更多,你可以去

therichpost

另一答案

按下结帐按钮时通常会显示。但如果你在页面加载时看它。也许这是由woocommerce错误。你应该更新woocommerce插件。我希望你更新插件时会出现这个错误。

但在那之后,如果您遇到同样的问题,请与我联系。我会看看它。

谢谢

以上是关于在Woocommerce结帐页面中设置唯一的验证错误通知的主要内容,如果未能解决你的问题,请参考以下文章

Paypal 的 Woocommerce 结帐页面文本

隐藏 WooCommerce 结帐字段后删除所需的验证

Woocommerce:设置结帐字段值

Express Checkout Paypal Payment Gateway For Woocommerce 存在 Polylang 问题

避免在 WooCommerce 结帐中进行计费电话验证

验证 woocommerce 中的结帐字段