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

问题描述 投票:1回答:1

我找到了一种方法来更改占位符,但不是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;
}
php wordpress woocommerce checkout hook-woocommerce
1个回答
1
投票

您的代码有效,并且存在正确的相关html。但它通过CSS规则隐藏在标记类screen-reader-text中。

要使<label>可见,您需要从<label>标记中删除该类,添加以下行:

$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文件中。经过测试和工作。

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.