Заполните поле состояния проверки Woocommerce - PullRequest
0 голосов
/ 23 мая 2018

Так что у этой проблемы может быть простое решение, но я застрял на данный момент.После последнего обновления (Woocommerce 3.3.5) у меня возникла проблема с полем состояния на странице оформления заказа, поскольку оно не является обязательным, и люди просто пропускают его.Мне действительно нужно, чтобы это было обязательным, потому что я подключил свой веб-сайт к серверу компании доставки через API и отправил информацию о заказе непосредственно им.

Я попытался добавить это в мои functions.php, и дело в том, что когда я перехожу на страницу оформления заказа, поле имеет звездочку, но примерно на одну секунду.

add_filter( 'woocommerce_billing_fields', 'woo_filter_state_billing', 
10, 1 );
add_filter( 'woocommerce_shipping_fields', 
'woo_filter_state_shipping', 10, 1 );

function woo_filter_state_billing( $address_fields ) { 
$address_fields['billing_state']['required'] = true;
return $address_fields;
}
function woo_filter_state_shipping( $address_fields ) { 
$address_fields['shipping_state']['required'] = true;
return $address_fields;
}

Любойпомощь приветствуется.Спасибо!

Ответы [ 3 ]

0 голосов
/ 22 января 2019

По состоянию на январь 2019 года это работало лучше для меня

add_filter( 'woocommerce_billing_fields', 'woo_filter_state_billing', 10, 1 );
add_filter( 'woocommerce_shipping_fields', 'woo_filter_state_shipping', 10, 1 );
function woo_filter_state_billing( $address_fields ) {
  $address_fields['billing_state']['required'] = true;
    return $address_fields;
}
function woo_filter_state_shipping( $address_fields ) {
    $address_fields['shipping_state']['required'] = true;
    return $address_fields;
}
0 голосов
/ 28 февраля 2019

Может быть, вы имеете в виду «страна»?У меня была эта проблема, быть необъяснимо необязательным.В этом случае код будет:

add_filter( 'woocommerce_billing_fields' , 'make_country_field_required', 90, 1 );
function make_country_field_required( $address_fields ) {
     $address_fields['billing_country']['required'] = true;

     return $address_fields;
}
0 голосов
/ 23 мая 2018

По умолчанию в последней версии woocommerce 3.3.5, поле состояния обязательно ... Итак, в вашем случае что-то делает это поле не обязательным.

Вы можете попробовать это (работа для выставления счетов иотправка полей одновременно) :

add_filter( 'woocommerce_default_address_fields' , 'make_state_field_required', 90, 1 );
function make_state_field_required( $address_fields ) {
     $address_fields['state']['required'] = true;

     return $address_fields;
}

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

...