Задать вопрос
@trenton

Как правильно отключать поля в чекауте, чтоб не орало про адрес?

Мне пока подошло только одно решение - делать поля не обязательными именно вот так
add_filter( 'woocommerce_checkout_fields', 'unrequire_checkout_fields' );
function unrequire_checkout_fields( $fields ) {
	$fields['billing']['billing_company']['required']   = false;
	$fields['billing']['billing_city']['required']      = false;
	$fields['billing']['billing_postcode']['required']  = false;
	$fields['billing']['billing_country']['required']   = false;
	$fields['billing']['billing_state']['required']     = false;
	$fields['billing']['billing_address_1']['required'] = false;
	$fields['billing']['billing_address_2']['required'] = false;
	return $fields;
}

И скрывать только css-ом
#billing_country_field, #billing_address_1_field, #billing_address_2_field,#billing_state_field,#billing_last_name_field,#billing_postcode_field,#billing_company_field {
				display: none !important;
			}

Но по-моему это ОЧЕНЬ не гибко. Как только вставляю вот так, то бесит своим "введите адрес",еще и "неправильный способ доставки" относительно нативного самовывоза. При чем и вот так полностью отдельным экшеном, и в тот хук просто поля unset($fields['billing']..... без навешивания нового экшена перед return.
add_filter('woocommerce_checkout_fields','remove_checkout_fields');
function remove_checkout_fields($fields){
    unset($fields['billing']['billing_first_name']);
    unset($fields['billing']['billing_last_name']);
    unset($fields['billing']['billing_address_1']);
    unset($fields['billing']['billing_address_2']);
    unset($fields['billing']['billing_city']);
    unset($fields['billing']['billing_postcode']);
    unset($fields['billing']['billing_country']);
    unset($fields['billing']['billing_state']);
    return $fields;
}

Именно без этих строк с css все отправляется как надо, и именно на них ругается, многоразово уже перепроверил. Может у кого было и как-то решили, поняли, в чем конфликт?
Я имею в виду нативно, плагины то ясно, что вагон найдется.
  • Вопрос задан
  • 60 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы