在 Woocommerce 中不需要结帐运输邮政编码字段
Make checkout shipping postcode field not required in Woocommerce
所以我按照以下说明进行操作:Link 更改 post 代码的必填字段。
add_filter( 'woocommerce_billing_fields', 'wc_optional_billing_fields' );
function wc_optional_billing_fields( $address_fields ) {
$address_fields['shipping_postcode']['required'] = false;
return $address_fields;
}
不幸的是,它没有更改必填项,而是创建了第二个字段:
Image
谁能指出这里的问题是什么?
That happens because you are using woocommerce_billing_fields
hook filter that is managing only billing fields for a shipping postcode field…
您可以尝试使用 woocommerce_shipping_fields
过滤器挂钩,但它不会起作用,因为 邮政编码 结帐字段是一个非常特殊的字段 只能使用以下挂钩函数设置为不需要:
add_filter( 'woocommerce_default_address_fields', 'customise_postcode_fields' );
function customise_postcode_fields( $address_fields ) {
$address_fields['postcode']['required'] = false;
return $address_fields;
}
正如您所见,它作用于 帐单和送货邮政编码 字段。显然不可能将其仅用于发货邮政编码字段,同时用于账单和发货字段。
官方文档教程:Customizing checkout fields using actions and filters
所以我按照以下说明进行操作:Link 更改 post 代码的必填字段。
add_filter( 'woocommerce_billing_fields', 'wc_optional_billing_fields' );
function wc_optional_billing_fields( $address_fields ) {
$address_fields['shipping_postcode']['required'] = false;
return $address_fields;
}
不幸的是,它没有更改必填项,而是创建了第二个字段: Image
谁能指出这里的问题是什么?
That happens because you are using
woocommerce_billing_fields
hook filter that is managing only billing fields for a shipping postcode field…
您可以尝试使用 woocommerce_shipping_fields
过滤器挂钩,但它不会起作用,因为 邮政编码 结帐字段是一个非常特殊的字段 只能使用以下挂钩函数设置为不需要:
add_filter( 'woocommerce_default_address_fields', 'customise_postcode_fields' );
function customise_postcode_fields( $address_fields ) {
$address_fields['postcode']['required'] = false;
return $address_fields;
}
正如您所见,它作用于 帐单和送货邮政编码 字段。显然不可能将其仅用于发货邮政编码字段,同时用于账单和发货字段。
官方文档教程:Customizing checkout fields using actions and filters