Настройте заполнители некоторых полей оформления заказа в Woocommerce 3+

Я обновил заполнители для полей корзины через настройки WooCommerce следующим образом:

введите описание изображения здесь

Однако на внешнем интерфейсе предыдущие заполнители остаются:

введите описание изображения здесь

Я также использовал следующий код, адаптированный из другого потока StackOverflow, целью которого является переопределение содержимого заполнителя, но значения по умолчанию все еще сохраняются.

add_filter('woocommerce_default_address_fields', 'override_default_address_checkout_fields', 20, 1);
function override_default_address_checkout_fields( $address_fields ) {
$address_fields['state']['placeholder'] = 'State';
$address_fields['postcode']['placeholder'] = 'Postcode';
return $address_fields;
}

Посоветуйте, пожалуйста, как мне добиться желаемого текста заполнителя!

1

Решение

В woocommerce default нет настроек, которые вы описали. Таким образом, вы используете сторонний плагин, чтобы настроить поля. Поэтому вам нужно попробовать несколько способов с более высоким приоритетом хуков.

Так что попробуйте эти один за другим:

1) Использование ловушки фильтра woocommerce_default_address_fields (с крюком с более высоким приоритетом):

add_filter('woocommerce_default_address_fields', 'customize_default_address_fields', 10000, 1 );
function customize_default_address_fields( $address_fields ) {
$address_fields['state']['placeholder'] = __('State', 'woocommerce');
$address_fields['postcode']['placeholder'] = __('Postcode', 'woocommerce');
return $address_fields;
}

2) Использование woocommerce_checkout_fields крючок фильтра:

add_filter('woocommerce_checkout_fields', 'customize_checkout_fields', 10000, 1 );
function customize_checkout_fields( $fields ) {
$fields['billing']['billing_state']['placeholder'] = __('State', 'woocommerce');
$fields['shipping']['shipping_state']['placeholder'] = __('State', 'woocommerce');
$fields['billing']['billing_postcode']['placeholder'] = __('Postcode', 'woocommerce');
$fields['shipping']['shipping_postcode']['placeholder'] = __('Postcode', 'woocommerce');
return $fields;
}

3) Использование woocommerce_billing_fields а также woocommerce_shipping_fields фильтры-крючки:

add_filter('woocommerce_billing_fields', 'customize_billing_fields', 10000, 1 );
function customize_billing_fields( $billing_fields ) {
$billing_fields['billing_state']['placeholder'] = __('State', 'woocommerce');
$billing_fields['billing_postcode']['placeholder'] = __('Postcode', 'woocommerce');

return $billing_fields;
}

add_filter('woocommerce_shipping_fields', 'customize_shipping_fields', 10000, 1 );
function customize_shipping_fields( $shipping_fields ) {
$shipping_fields['shipping_state']['placeholder'] = __('State', 'woocommerce');
$shipping_fields['shipping_postcode']['placeholder'] = __('Postcode', 'woocommerce');

return $shipping_fields;
}

Весь код помещается в файл function.php вашей активной дочерней темы (или активной темы).

Я надеюсь, что один из них будет работать. Без стороннего плагина каждый из этих кодов работает отлично.

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector