我正在尝试在Woocommerce结帐页面上为billing_address_2字段设置/显示标签,但无法找到执行此操作的方法。有谁知道解决方案?
下面的代码(在其他字段上可以正常工作)不起作用。
add_filter( 'woocommerce_checkout_fields' , 'custom_rename_wc_checkout_fields' );
function custom_rename_wc_checkout_fields( $fields ) {
$fields['billing']['billing_address_2']['label'] = 'Building number';
return $fields;
}
答案 0 :(得分:2)
为了将来的读者起见,使用答案更新此问题。
从WooCommerce 3.5.1开始,提交87054ece9a4c05db72e139730ed1764c63fab635将' screen-reader-text 'label_class添加到Billing&Shipping Address 2字段中,以便根据问题{{3 }}。此类将使标签保持隐藏状态,除非也将其更改(例如,使其空白,例如“地址1”字段)。
这是我更新我的functions.php以获得billing / shipping_address_2标签的方式(我使用了单独的billing / shipping过滤器,因为我为简洁起见未对其他字段进行更改)。
// Billing Fields.
add_filter( 'woocommerce_billing_fields', 'custom_woocommerce_billing_fields' );
function custom_woocommerce_billing_fields( $fields ) {
$fields['billing_address_2']['label'] = 'Address 2';
$fields['billing_address_2']['label_class'] = '';
return $fields;
}
// Shipping Fields.
add_filter( 'woocommerce_shipping_fields', 'custom_woocommerce_shipping_fields' );
function custom_woocommerce_shipping_fields_custom( $fields ) {
$fields['shipping_address_2']['label'] = 'Address 2';
$fields['shipping_address_2']['label_class'] = '';
return $fields;
}