Очистить только некоторые значения полей оформления заказа в Woocommerce - PullRequest
0 голосов
/ 11 июня 2018

В Woocommerce я пытаюсь очистить поля оформления заказа.поэтому, когда пользователь, который заказал что-то раньше, а теперь заказывает что-то снова, ему / ей придется снова вводить всю свою информацию.

Я использую этот код

function clear_checkout_fields($input){
return '';
}

add_filter( 'woocommerce_checkout_get_value' , 'clear_checkout_fields' , 1);

Теперь этот код очищает все поля, но он также меняет мой НДС на 0. 0. 1006 *

Кто-нибудь знает решение этой проблемы?

1 Ответ

0 голосов
/ 11 июня 2018

В вашей подключенной функции woocommerce_checkout_get_value есть некоторые ошибки аргументов.
На самом деле есть 2 аргумента:

  • аргумент $value, который возвращается как ловушка фильтра,
  • аргумент $imput, который можно использовать для таргетинга любого поля оформления заказа.

Таким образом, в вашем случае вы будете использовать аргумент $imput, чтобы избежать настраиваемого поля проверки НДСбыть опустошенным.В приведенном ниже коде вам нужно будет заменить vat_number на правильный атрибут name поля, установленный в вашем пользовательском поле для проверки НДС:

add_filter( 'woocommerce_checkout_get_value' , 'clear_checkout_fields' , 10, 2 );
function clear_checkout_fields( $value, $input ){
    if( $input != 'vat_number' )
        $value = '';

    return $value;
}

Код входит в файл function.php вашего активногодетская тема (или активная тема).Проверено и работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...