删除的 Woocommerce 结帐字段仍然需要
Removed Woocommerce Checkout Fields still required
我正在删除特定的 Woocoomerce 结账字段,因为取货订单不需要它们。
add_filter( 'woocommerce_checkout_fields' , 'custom_override_checkout_fields' );
function custom_override_checkout_fields( $fields ) {
unset($fields['billing']['billing_company']);
unset($fields['billing']['billing_address_1']);
unset($fields['billing']['billing_address_2']);
unset($fields['billing']['billing_city']);
unset($fields['billing']['billing_postcode']);
unset($fields['billing']['billing_country']);
unset($fields['billing']['billing_state']);
unset($fields['order']['order_comments']);
return $fields;
}
这对于删除字段非常有效,但不允许我结帐。我收到以下错误:
我也曾尝试将 required 数组项更改为 FALSE,但无济于事。
$fields['billing']['billing_company']['required'] = false;
$fields['billing']['billing_address_1']['required'] = false;
$fields['billing']['billing_address_2']['required'] = false;
$fields['billing']['billing_city']['required'] = false;
$fields['billing']['billing_postcode']['required'] = false;
$fields['billing']['billing_country']['required'] = false;
$fields['billing']['billing_state']['required'] = false;
我正在使用 Storefront 主题以及 Woocommerce 3.1.2
在 Woocommerce 版本 3 之后,这是一件令人讨厌的事情。要么降级到早期版本,要么允许这些详细信息通过特定国家/地区。您可以使用 css 或 JS 隐藏表单输入,但在 woocommerce 设置中设置所需的国家。
与 "unset field" 类似的问题,所以只需尝试将优先级设置为“100”或类似的
示例:add_filter('woocommerce_checkout_fields', 'checkout_fields', 100);
来源:
if(!function_exists('checkout_fields')){
function checkout_fields($fields){
unset($fields['billing']['billing_address_1']);
unset($fields['billing']['billing_address_2']);
unset($fields['billing']['billing_city']);
unset($fields['billing']['billing_postcode']);
unset($fields['billing']['billing_country']);
unset($fields['billing']['billing_state']);
return $fields;
}
add_filter('woocommerce_checkout_fields', 'checkout_fields', 100);
}
我正在删除特定的 Woocoomerce 结账字段,因为取货订单不需要它们。
add_filter( 'woocommerce_checkout_fields' , 'custom_override_checkout_fields' );
function custom_override_checkout_fields( $fields ) {
unset($fields['billing']['billing_company']);
unset($fields['billing']['billing_address_1']);
unset($fields['billing']['billing_address_2']);
unset($fields['billing']['billing_city']);
unset($fields['billing']['billing_postcode']);
unset($fields['billing']['billing_country']);
unset($fields['billing']['billing_state']);
unset($fields['order']['order_comments']);
return $fields;
}
这对于删除字段非常有效,但不允许我结帐。我收到以下错误:
我也曾尝试将 required 数组项更改为 FALSE,但无济于事。
$fields['billing']['billing_company']['required'] = false;
$fields['billing']['billing_address_1']['required'] = false;
$fields['billing']['billing_address_2']['required'] = false;
$fields['billing']['billing_city']['required'] = false;
$fields['billing']['billing_postcode']['required'] = false;
$fields['billing']['billing_country']['required'] = false;
$fields['billing']['billing_state']['required'] = false;
我正在使用 Storefront 主题以及 Woocommerce 3.1.2
在 Woocommerce 版本 3 之后,这是一件令人讨厌的事情。要么降级到早期版本,要么允许这些详细信息通过特定国家/地区。您可以使用 css 或 JS 隐藏表单输入,但在 woocommerce 设置中设置所需的国家。
与 "unset field" 类似的问题,所以只需尝试将优先级设置为“100”或类似的 示例:add_filter('woocommerce_checkout_fields', 'checkout_fields', 100);
来源:
if(!function_exists('checkout_fields')){
function checkout_fields($fields){
unset($fields['billing']['billing_address_1']);
unset($fields['billing']['billing_address_2']);
unset($fields['billing']['billing_city']);
unset($fields['billing']['billing_postcode']);
unset($fields['billing']['billing_country']);
unset($fields['billing']['billing_state']);
return $fields;
}
add_filter('woocommerce_checkout_fields', 'checkout_fields', 100);
}