我正在构建我的 WooCommerce 商店,需要更改结帐账单/送货字段。目前,它显示州/县为可选,但对我来说重要的是它是必需的并标有红色星号,因为这会影响价格。
我尝试过 WooCommerce 的 Checkout Field Editor 等插件,但没有成功。还尝试了一些我在网上找到的代码,我将其添加到子主题的functions.php中,但效果不好。
我尝试的代码如下:
add_filter( 'woocommerce_billing_fields', 'ts_require_wc_state_field');
function ts_require_wc_company_field( $fields ) {
$fields['billing_state']['required'] = true;
return $fields;
}
和
add_filter( 'woocommerce_default_address_fields', 'custom_override_default_address_fields');
function custom_override_default_address_fields( $address_fields )
{
$address_fields['billing_state']['required'] = true;
return $address_fields;
}
也许有人可以帮我找到正确的儿童主题代码?
在这方面有点新手,所以非常感谢任何帮助。
对于一些国家,比如葡萄牙,需要一些不同的东西才能发挥作用。尝试以下操作:
add_filter( 'woocommerce_get_country_locale', 'portugal_country_locale', 10, 1 );
function portugal_country_locale( $locale ) {
$locale['PT']['state']['required'] = true;
$locale['PT']['state']['hidden'] = false;
return $locale;
}
代码位于子主题的functions.php 文件中(或插件中)。已测试并有效。
说明: 某些国家/地区在 WooCommerce 中具有特定的“区域设置”字段设置。我们正在添加/更改在
WC_Countries
方法 上定义的默认 WooCommerce 国家/地区区域设置get_country_locale()