Форма заказа WooCommerce зачастую пугает покупателей — столько полей надо заполнить! Да и в принципе для простых покупателей (не компаний) не имеет смысла поле ввода названия компании. А может быть в магазине нет доставки, зачем тогда заполнять поля адреса?
Итак, для того, чтобы убрать ненужные поля при оформлении заказа, нужно воспользоваться хуком woocommerce_checkout_fields
:
add_filter( \'woocommerce_checkout_fields\', \'mycheckout_fields\', 25 );
function mycheckout_fields( $fields ) {
unset( $fields[ \'billing\' ][ \'billing_company\' ] ); // компания
unset( $fields[ \'billing\' ][ \'billing_country\' ] ); // страна
unset( $fields[ \'billing\' ][ \'billing_address_1\' ] ); // адрес 1
unset( $fields[ \'billing\' ][ \'billing_address_2\' ] ); // адрес 2
unset( $fields[ \'billing\' ][ \'billing_city\' ] ); // город
unset( $fields[ \'billing\' ][ \'billing_state\' ] ); // регион, штат
unset( $fields[ \'billing\' ][ \'billing_postcode\' ] ); // почтовый индекс
unset( $fields[ \'order\' ][ \'order_comments\' ] ); // заметки к заказу
return $fields;
}
Где $fields
– многомерный массив всех полей на странице оформления заказа.
Весь код добавляем в functions.php
вашей темы.
Если вам необходимо удалить поле ввода фамилии или другие данные, то добавьте к функции следующие необходимые вам строки:
unset( $fields[ \'billing\' ][ \'billing_first_name\' ] ); // имя
unset( $fields[ \'billing\' ][ \'billing_last_name\' ] ); // фамилия
unset( $fields[ \'billing\' ][ \'billing_phone\' ] ); // телефон
unset( $fields[ \'billing\' ][ \'billing_email\' ] ); // емайл