Две схемы оформления заказа
| Классическое оформление | Блочное оформление | |
|---|---|---|
| Как устроено | Страницы «Корзина» и «Оформление заказа» с шорткодами [woocommerce_cart] и [woocommerce_checkout] | Блоки «Корзина» и «Оформление заказа» в редакторе страниц |
| Где настраиваются поля | В настройщике темы и плагинами-редакторами полей | В настройках блоков в редакторе страницы |
| Как работает с сервером | Обновляет фрагменты страницы через AJAX | Через Store API WooCommerce |
| Поддержка в плагине Ozon | С первой версии | С версии 1.1.0 |
Для покупателя разница почти незаметна, но для плагина доставки это два разных мира: в блочном оформлении нельзя просто вывести свой HTML под тарифом, как в классическом, — всё идёт через данные корзины и API блоков.
Как узнать, какая схема на вашем сайте
- Откройте в админке страницу, которая назначена страницей оформления заказа (WooCommerce → Настройки → Дополнительно), в редакторе.
- Если внутри один шорткод
[woocommerce_checkout]— у вас классическое оформление. Если блок «Оформление заказа» с вложенными блоками полей — блочное. - То же для страницы корзины: шорткод
[woocommerce_cart]или блок «Корзина».
Проще всего посмотреть в самом плагине: в чек-листе готовности на вкладке «Подключение» есть строка «Оформление заказа и поле «Телефон»». В ней написано, какая схема стоит на сайте — «Классическое оформление заказа (шорткод [woocommerce_checkout])» или «Блочное оформление заказа (блок «Оформление заказа»)» — и в каком состоянии поле телефона.
Что видит покупатель в обеих схемах
Покупатель видит одно и то же, какая бы схема ни стояла:
- способ «Ozon — пункт выдачи» и блок под ним: подсказка для города, кнопка «Выбрать пункт выдачи», адрес выбранного пункта, номер, на который оформится заказ, и предупреждение о номере;
- одно и то же окно выбора пункта — поиск адреса, «Рядом со мной», список, карта;
- пересчёт цены сразу после выбора пункта;
- скрытую «Оплату при получении»;
- запрет оформить заказ без пункта, с номером без аккаунта Ozon или если Ozon не везёт в выбранный пункт — с понятным сообщением.
В блоке «Корзина» под тарифом Ozon показывается подсказка «Пункт выдачи выбирается при оформлении заказа»: сам выбор пункта происходит на странице оформления.
Как это устроено в блочном оформлении
Этот раздел — для разработчиков и тех, кому интересно, почему поддержка блоков потребовала отдельной версии.
- Данные идут через Store API. Блок под тарифом Ozon строится из данных корзины, которые плагин добавляет в ответ Store API (
extensions.ozwc). Это те же данные, что использует классический шаблон, поэтому поведение совпадает. - Без отдельной сборки JavaScript. Скрипт для блоков работает на глобальных объектах
wp.*иwc.*, которые WooCommerce уже загружает на странице. - Окно выбора пункта общее с классическим оформлением.
- Выбор пункта сохраняется запросом Store API для расширений корзины, и цена сразу пересчитывается.
- Без пункта кнопка «Оформить заказ» не сработает, а блок Ozon покажет ошибку.
- Перед созданием заказа сервер проверяет пункт, телефон, аккаунт Ozon и способ оплаты и сохраняет в заказ те же данные, что и в классике. Поэтому дальше — передача в Ozon, «Собрано», этикетки — всё одинаково.
Своего места под конкретным тарифом блок WooCommerce не даёт, поэтому плагин сам вставляет свой блок сразу под вариантом Ozon. Если тариф Ozon единственный и показан без переключателя, блок встаёт под списком тарифов.
Особенности классического оформления
Классика проверена на реальном магазине с сентября 2026 года. Есть одна ловушка: на некоторых сайтах на странице корзины стоят оба шорткода — и корзина, и оформление заказа. Тогда форма оформления есть сразу на двух страницах, и проверять нужно обе: и /cart/, и /checkout/.
Ещё один источник проблем в классике — редакторы полей оформления. Они могут скрыть или сделать необязательными поля, которые нужны плагину. Обязательными должны остаться «Телефон» и «Страна». Если тема или редактор делают обязательным поле «Адрес», включите настройку «Поля адреса» — плагин подставит адрес пункта в пустые поля «Адрес» и «Город»; заполненные покупателем поля он не трогает.
Поле «Телефон» в двух схемах
Без номера Ozon не считает цену, поэтому поле «Телефон» должно быть видно, а лучше — обязательно.
- Классика: Внешний вид → Настроить → WooCommerce → Оформление заказа → Поле «Телефон».
- Блоки: откройте страницу оформления в редакторе, выделите блок «Оформление заказа» и включите телефон в его настройках. В блоке по умолчанию телефон показан, но необязателен.
Если поле скрыто, чек-лист покажет ошибку; если необязательно — предупреждение. Плагин в любом случае попросит номер у покупателя, выбравшего Ozon, но обязательное поле избавляет от лишнего шага. Подробно о роли номера — в статье Телефон и аккаунт Ozon.
Ограничения и что проверять после обновлений
- Блочное оформление проверено на WooCommerce 8.4. Блоки WooCommerce активно меняются, поэтому после крупных обновлений WooCommerce проверьте оформление заказа ещё раз — под администратором с выбором пункта и пересчётом цены.
- Если чек-лист неправильно определяет схему (например, оформление собрано конструктором страниц), разработчик может переопределить это фильтром
ozwc_uses_block_checkout. - Не нужно переводить сайт с блоков на классику ради Ozon: плагин работает с той схемой, которая уже стоит.
Чек-лист проверки
- В чек-листе плагина правильно определена схема оформления, поле «Телефон» — обязательное.
- На странице оформления под администратором есть «Ozon — пункт выдачи».
- Без телефона под способом видна просьба указать номер.
- Окно выбора пункта открывается, поиск и «Рядом со мной» работают.
- После выбора пункта цена в итоге заказа меняется.
- «Оплата при получении» скрыта, когда выбран Ozon.
- Без пункта заказ не оформляется.
- В корзине под тарифом Ozon — подсказка о выборе пункта при оформлении.
- Если форма оформления есть и на странице корзины — то же самое там.
Полный порядок проверки перед запуском — в инструкции по установке, шаг 12.
Вопросы
Нужно ли что-то переключать в плагине, если я перешёл с классики на блоки?
Нет. Плагин сам определяет, какая схема стоит на странице оформления, и работает с ней. После перехода откройте чек-лист на вкладке «Подключение» и проверьте строку об оформлении и поле «Телефон».
После обновления WooCommerce блок Ozon пропал или выглядит не так. Что делать?
Проверьте, нет ли обновления плагина в разделе «Плагины». По действующей годовой лицензии сообщите об ошибке разработчику по почте — ответ в течение 2 рабочих дней, исправление выходит обновлением. Пока разбираетесь, остальные способы доставки на сайте продолжают работать.
Читайте дальше
- Требования к сайту и хостингуWordPress, WooCommerce, 64-битный PHP, cron, исходящие запросы и оформление заказа.
- Телефон и аккаунт Ozon покупателяПочему нужен номер с аккаунтом Ozon и где покупатель получит заказ.
- Выбор пункта выдачи в WooCommerceСправочник 88 тысяч пунктов, карта и список, поиск адреса, проверка доступности пункта.
- Частые ошибки и решенияНет способа Ozon, не считается цена, 401 «проверьте ключи», баланс, справочник, кэш.
- История версий плагинаЧто менялось в плагине с первой версии для других магазинов.