在Woocommerce中显示自定义结账地址字段2标签

5
我发现了一种方法来更改 WooCommerce 的结帐输入字段的占位符,但无法更改标签。我想要更改 adress_field_2 标签。
以下是我的尝试,但没有任何更改。我尝试使用 [label] 和 [label_class],但都不起作用...
add_filter( 'woocommerce_default_address_fields', 'new_checkout_field_label', 10, 1 );
function new_checkout_field_label( $address_fields ) {
    $address_fields['address_2']['placeholder'] = __( '', 'woocommerce' );
    $address_fields['address_2']['label'] = __( 'Apt, Unit, Etc (optional)', 'woocommerce' );
    return $address_fields;
}
1个回答

11
你的代码有效,正确的相关HTML已经存在。但是由于CSS规则,它被隐藏在class为screen-reader-text的标签下。 要使<label> 可见,你需要从<label> 标签中移除该class并添加以下行:
$address_fields['address_2']['label_class'] = array(); // No label class

那么在你的代码中:

add_filter( 'woocommerce_default_address_fields', 'custom_override_default_checkout_fields', 10, 1 );
function custom_override_default_checkout_fields( $address_fields ) {
    $address_fields['address_2']['placeholder'] = __( '', 'woocommerce' );
    $address_fields['address_2']['label'] = __( 'Apt, Unit, Etc (optional)', 'woocommerce' );
    $address_fields['address_2']['label_class'] = array(); // No label class

    return $address_fields;
}

将代码放在您当前使用的子主题(或活动主题)的 function.php 文件中。已测试并且有效。

输入图像描述


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接