对于爱尔兰(例如)的卖家而言,令人讨厌的事情是,我们仍然不使用邮政编码(他们最近介绍了他们,但没有人使用它们)。所以,在今天的任务中,我想告诉您如何在结帐页面上禁用邮政编码的 “REQUIRED” 功能。

我们已经看到如何完全删除 PostCode / ZIP 字段… 但是这次我们希望把它留在结帐上,如果我们没有输入任何东西,只要避免验证错误。

PHP 代码段:禁用 Postcode / ZIP 验证 @ WooCommerce Checkout

/**
* @snippet Disable Postcode/ZIP Validation @ WooCommerce Checkout
* @how-to Watch tutorial @ https://businessbloomer.com/?p=19055
* @sourcecode https://businessbloomer.com/?p=20203
* @author Rodolfo Melogli
* @testedwith WooCommerce 2.5.5
*/

add_filter( 'woocommerce_default_address_fields' , 'bbloomer_override_postcode_validation' );

function bbloomer_override_postcode_validation( $address_fields ) {
  $address_fields['postcode']['required'] = false;
  return $address_fields;
}

官方文件

https://docs.woothemes.com/document/tutorial-customising-checkout-fields-using-actions-and-filters/


可以在哪里添加此代码?

您可以将 PHP 代码片段放置在主题或子主题的 functions.php 文件的底部(如果是 CSS 代码,请添加到主题的 style.css 文件底部),修改之前建议先备份原始文件,若出现错误请先删除此代码。


这段代码是否正常可用?

或者是您有更好的解决方案想要分享?请到薇晓朵 WooCommerce 中文论坛留言告知,我们希望可以帮到更多国内的 WooCommerce 用户也希望您的参与。


需要关于 WooCommerce 的帮助?

请观看我们提供的免费视频教程或到薇晓朵 WooCommerce 中文论坛提问,会有专业技术团队提供相关帮助。