WooCommerce: Как удалить поля со страницы оформления заказа

Иногда функционал WooCommerce может оказаться для вас избыточным, сегодня я расскажу вам как его можно настроить под себя.

Например мне недавно нужно было подчистить страницу чекаута, ту самую форму отправки заказа. Так как модуль оплаты который предоставляет свои пункты выдачи товара, мне понадобилось удалить из формы заказа поля с адресом доставки. Так-же мне показалось сомнительной польза от поле «Компания» так как мои клиенты были ориентированы на работу с частными лицами.

Итак, что бы избавиться от лишнего давайте в вашей теме находите файл functions.php и вставим туда вот такой код, в который мы будем поставлять поля для удаления:

[code]
add_filter( 'woocommerce_checkout_fields' , 'custom_override_checkout_fields' );
 
function custom_override_checkout_fields( $fields ) {
 // поля которые нужно удалить вставить сюда
    return $fields;
[/code]

А вот собственно и список полей которые вы можете вставить вместо комментария в коде выше:

[code]
unset($fields['billing']['billing_first_name']);
unset($fields['billing']['billing_last_name']);
unset($fields['billing']['billing_company']);
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']);
unset($fields['billing']['billing_phone']);
unset($fields['order']['order_comments']);
unset($fields['billing']['billing_email']);
unset($fields['account']['account_username']);
unset($fields['account']['account_password']);
unset($fields['account']['account_password-2']);
[/code]

Вот мой пример реализации удаления полей «адреса» и компании:

[code]

/*
WooCommerce remove adress fields
*/
add_filter( ‘woocommerce_checkout_fields’ , ‘custom_override_checkout_fields’ );

function custom_override_checkout_fields( $fields ) {
unset($fields[‘billing’][‘billing_company’]); // Удаляем поле компания
unset($fields[‘billing’][‘billing_address_1’]); // Удаляем поле Адрес
unset($fields[‘billing’][‘billing_address_2’]); // Удаляем поле Адрес 2
unset($fields[‘billing’][‘billing_city’]); // Удаляем поле Город
unset($fields[‘billing’][‘billing_postcode’]); // Удаляем поле индекс
unset($fields[‘billing’][‘billing_country’]); // Удаляем поле Страна
unset($fields[‘billing’][‘billing_state’]); // Удаляем поле область/штат
return $fields;
}

[/code]

Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *