Стандартная форма оформления заказа в WooCommerce одинакова и для мебельного салона, и для магазина курсов, и для интернет-магазина запчастей, хотя бизнесы у них разные. Одиннадцать обязательных полей чекаута, лишний шаг между корзиной и оплатой, отсутствие поля для комментария к доставке - это то, что я регулярно вижу на клиентских проектах и что просаживает конверсию на ровном месте. Ниже разбираю, какие поля убираю первыми, что добавляю под конкретную нишу и как поменять форму заказа, не сломав оплату после следующего обновления плагина.
По теме статьи
Готовое решение
Ограничение применения промокода в корзине Tilda
Промокод в Tilda не действует на выбранную категорию (например, «Распродажа»). Готовый скрипт + инструкция по подключению.
от6 000 ₽
Интернет-магазин
Интернет-магазин под ключ
Интернет-магазин под ключ — на Tilda, WordPress + WooCommerce, Next.js Commerce или кастомный бэкенд. Подберу платформу под бюджет, ассортимент и
от80 000 ₽
Почему стандартный чекаут WooCommerce теряет клиентов
По умолчанию WooCommerce просит указать имя, фамилию, компанию, страну, город, область, индекс, два адреса, телефон и email - это одиннадцать полей на билинг, и это без учёта отдельного блока доставки. Для локального магазина с доставкой по одному городу половина этих полей лишняя: область не нужна, индекс не нужен, второй адрес почти никогда не заполняют, а поле «страна» с выпадающим списком из двухсот вариантов только удлиняет форму на телефоне.
На одном проекте по продаже онлайн-курсов я сократил чекаут с одиннадцати полей до пяти - имя, телефон, email, город, комментарий - и через месяц число заказов, брошенных на шаге оплаты, заметно снизилось. Причина простая: клиенты с телефона уставали прокручивать форму до кнопки оплаты. На магазине аксессуаров видел похожий эффект в обратную сторону: длинная форма плюс обязательная регистрация перед покупкой давали разрыв между добавлением товара в корзину и завершением заказа почти в три раза больше нормы.
Какие поля формы заказа можно убрать
Смотрю на чекаут глазами покупателя с телефона в руках и убираю то, что не влияет ни на доставку, ни на оплату, ни на закрывающие документы:
- «Название компании» - нужно только B2B-магазинам, для остальных это лишнее поле, которое переключает голову покупателя в режим «может это для юрлица» и тормозит оформление
- «Адрес строка 2» - почти никогда не заполняется, а место на форме и в интерфейсе занимает
- «Область/район» - если магазин работает по одному региону или доставка идёт только через ПВЗ СДЭК, значение можно проставлять автоматически по выбранному пункту выдачи
- Чекбокс «Доставить по другому адресу» - лишний, если у магазина нет корпоративных заказов с несколькими точками получения
- Обязательная регистрация до оплаты - гостевой чекаут почти всегда поднимает конверсию у новых посетителей, регистрацию можно предложить уже после оплаты
Как убрать поля через код, а не через визуальный конструктор
Через конструктор чекаута вроде Elementor или блоков Woo Blocks поля можно скрыть визуально, но при обновлении темы или плагина настройки нередко слетают, и форма возвращается к заводскому виду в самый неподходящий момент. Надёжнее держать логику в functions.php дочерней темы или в отдельном mu-plugin - тогда изменения переживают обновления ядра и темы.
add_filter( 'woocommerce_checkout_fields', 'kalinkindev_remove_checkout_fields' );
function kalinkindev_remove_checkout_fields( $fields ) {
unset( $fields['billing']['billing_company'] );
unset( $fields['billing']['billing_address_2'] );
unset( $fields['order']['order_comments'] );
return $fields;
}
add_filter( 'woocommerce_checkout_fields', 'kalinkindev_add_inn_field' );
function kalinkindev_add_inn_field( $fields ) {
$fields['billing']['billing_inn'] = array(
'label' => 'ИНН организации',
'required' => false,
'class' => array( 'form-row-wide' ),
'priority' => 35,
);
return $fields;
}
Такой фильтр убирает компанию, второй адрес и комментарий к заказу из стандартной формы и добавляет своё поле - ИНН организации, которое показываю только клиентам, отметившим себя как юрлицо через небольшой скрипт на JS, переключающий видимость блока по клику на радиокнопку «Физлицо / Организация».
Если нужна доработка чекаута под конкретную интеграцию - эквайринг, доставку, CRM - обычно беру такие задачи отдельно, полный список смотрите в услугах по разработке на WordPress.
Бесплатный материал
🎁 Полезный скрипт в подарок
Подпишитесь на Telegram - пришлю готовый скрипт по этой теме.
Без спама. Отписка в 1 клик.
Какие поля стоит добавить в оформление заказа
Пустых полей в стандартном чекауте WooCommerce, наоборот, не хватает под большинство ниш:
- Дата и время доставки отдельным полем, а не текстом в комментарии - иначе менеджер вручную разбирает свободный текст из заказов и путает даты
- Выбор пункта выдачи СДЭК прямо на странице оформления - виджет карты ПВЗ вместо отдельного письма «уточните адрес» после заказа
- ИНН и КПП для юрлиц - показываю условно, только после переключателя «Оформляю как организация»
- Чекбокс согласия на обработку персональных данных - обязателен по 152-ФЗ, и данные заказов у меня всегда остаются на сервере в РФ, без выгрузки в иностранные таблицы или сторонние облачные CRM
- Способ оплаты со встроенной формой T‑Bank - без редиректа на отдельную страницу банка, где часть клиентов теряется на шаге ввода карты
Отдельно проверяю формат телефона и email прямо в форме, до отправки заказа: опечатка в номере оборачивается тем, что курьер СДЭК не может дозвониться до получателя, а заказ зависает в статусе «в обработке» до звонка менеджера.
Ускоряю оформление: один шаг вместо трёх
С версии 8.3 WooCommerce по умолчанию использует блоки корзины и чекаута вместо старых шорткодов - они быстрее по загрузке и проще кастомизируются без переопределения шаблонов темы. На практике перевожу магазин на блочный чекаут и убираю классическую связку «корзина - страница чекаута - страница оплаты» в один экран: корзина сворачивается в боковую панель, а оплата происходит на той же странице, что и ввод данных.
Отдельно смотрю на автозаполнение: если у магазина настроена доставка СДЭК, индекс и город можно подтягивать по выбору ПВЗ на карте, а не просить ввести вручную. Для магазинов, которые принимают часть заявок через Telegram-бота на aiogram или форму на Tilda, ставлю похожий принцип на поток заказов: подключаю через n8n сценарий, который после успешной оплаты в WooCommerce отправляет уведомление менеджеру в Telegram и создаёт карточку в CRM без ручного переноса данных.
Плагин, код или конструктор: что выбрать для кастомизации чекаута
| Способ | Скорость запуска | Риск при обновлении WooCommerce | Гибкость под нишу |
|---|---|---|---|
| Плагин (Checkout Field Editor) | 1-2 часа на настройку | Низкий, если плагин поддерживается автором | Ограничена набором готовых настроек плагина |
| Код в functions.php / mu-plugin | Полдня-день на разработку и тесты | Минимальный, ядро и тема не затронуты | Полная - под любые условия показа полей и интеграции |
| Визуальный конструктор страницы чекаута | 1-2 часа | Высокий при смене темы или крупном обновлении билдера | Средняя, зависит от возможностей конкретного конструктора |
Для разовой правки - убрать два поля, поменять подписи - хватает плагина вроде Checkout Field Editor. Для интеграции с эквайрингом, доставкой и CRM беру код: он не зависит от того, будет ли автор плагина поддерживать его через год после покупки лицензии.
Частые вопросы
Сколько стоит доработать чекаут WooCommerce под конкретные поля?
Разовая правка без сложных интеграций обычно попадает в техподдержку - беру такие задачи от 15 000 ₽ в месяц. Если нужна интеграция с эквайрингом и доставкой, оцениваю это как отдельный проект интернет-магазина, от 80 000 ₽.
Ломается ли кастомизация чекаута при обновлении WooCommerce?
Правки через визуальный конструктор или прямое редактирование файлов шаблона темы рискуют слететь при апдейте. Код в functions.php дочерней темы или в отдельном mu-plugin переживает обновления, потому что не трогает файлы ядра WooCommerce и темы.
Можно ли добавить оплату T‑Bank прямо на странице оформления заказа?
Да, официальный плагин T‑Bank для WooCommerce поддерживает встроенную форму оплаты без редиректа - клиент вводит карту на той же странице, где заполнял адрес и выбирал доставку.
Нужно ли поле ИНН всем магазинам на WooCommerce?
Нет, только если среди покупателей есть юрлица или ИП, которым нужны закрывающие документы. Для розничного магазина это поле стоит показывать по переключателю, а не всем подряд, иначе форма снова разрастается до одиннадцати полей.