Telegram

Оптовые цены WooCommerce для ролей дилеров

Оптовый прайс в карточке товара виден после входа, а в корзине снова розница — частая жалоба B2B-магазинов на WordPress. Причина почти всегда в связке role-based pricing, кэша и пересчёта корзины, а не в «сломанном WooCommerce».

Оптовые цены WooCommerce для ролей дилеров

Как должно работать для дилеров

Гость видит розницу или «войдите для опта». Пользователь с ролью dealer_1, wholesale или custom получает свою сетку цен в каталоге, в корзине и на чекауте — одинаково.

Если цены разъехались между каталогом и корзиной, покупатель не оформит заказ: доверие к магазину падает сильнее, чем от медленной доставки.

Типовая схема: один плагин ролевых цен + отдельный кэш для авторизованных + тест каждой роли на staging перед выкатом.

Типовые конфликты плагинов

Два плагина опта (Wholesale Suite, YITH, Role-based pricing и кастом) — перебивают друг друга хуками `woocommerce_product_get_price`. Оставьте один источник правды.

Плагин скидок по купону может сбрасывать оптовую цену до розничной при пересчёте корзины. Проверьте сценарий: товар в корзине → обновить количество → сменить адрес доставки.

Dynamic pricing «от количества» иногда считает только для гостя, если роль не указана в правилах плагина.

Оптовые цены WooCommerce для ролей дилеров

Кэш и сессии

Page cache отдаёт HTML каталога гостя — авторизованный дилер видит чужие цены до обновления. Исключите каталог и корзину из полного кэша или включите vary-by-cookie для роли.

Object cache ускоряет магазин, но при ошибке конфигурации сессия «отваливается» и роль сбрасывается на customer — снова розница. Симптомы похожи на статью про корзину.

CDN с агрессивным кэшем на `/product/` без bypass для logged-in — та же история.

Что проверить на staging

Создайте тестовых пользователей под каждую роль дилера. Пройдите путь: каталог → корзина → оформление → итоговая сумма.

Сравните цену SKU, который участвует в акции и в оптовой сетке — акция не должна ломать опт без явного правила.

После обновления плагина опта прогоните тест снова — breaking change в API WooCommerce встречается раз в год.

Что не делать

Не правьте цены вручную в базе `wp_postmeta` без бэкапа — WooCommerce пересчитает при следующем импорте.

Не включайте «скрыть цену для гостей» без страницы входа — SEO и конверсия страдают.

Не выкатывайте новую сетку ролей в пятницу вечером без окна отката.

Что сделает WebStudio7

Воспроизведём сценарий на staging, найдём конфликт кэша или плагина, настроим пересчёт для ролей, проверим чекаут и выкатим в согласованное окно.

Одна зона WooCommerce (оптовые цены, корзина или оплата) — от 4 900 ₽ после брифа. Кейс с тремя ролями дилеров — в разделе кейсов.

Магазины с нуля не собираем — только доработка действующего WordPress. Смета до старта — Telegram @webstudio7.

По теме в блоге

Услуга: Доработка WooCommerce · Кейс: Кейс: опт, три роли дилеров · Расценки · Контакты

Все статьи блога

Опишите задачу

Опишите URL сайта и симптом — ответим в Telegram @webstudio7 или на info@web-studio-7.ru в рабочее время. Смета — до начала работ.