Required Options Fix

Исправление валидации обязательных опций товара для CS-Cart и Multi-Vendor
Отзывов: 1
Last update: 27.08.2026 Поддерживает текущую версию CS-Cart
не более двух доменов на витрину, основной и для разработки
Required Options Fix
$30.00

По мотивам вопроса на форуме CS-Cart: Required Options Not Working Again — Nova Theme — CS-Cart v4.20.1

01_storefront_required_option_blocked.png

Рис. 1 — Обязательная опция "Memory capacity" (Select box) в восстановленном пустом состоянии "Please, select one", и обязательная опция "Choose a free game" с сообщением "поле обязательно для заполнения" после попытки добавить товар в корзину.

Реальная проверка обязательных опций

Модуль доступен на русском и английском языках.

С версии 4.16.2 в CS-Cart сломана валидация обязательных Select/Radio опций в режиме "Одновременно": первый вариант тихо предвыбирается сам, звёздочка "обязательно" висит для вида, а по факту заказ проходит с дефолтным значением и его наценкой — без единого клика покупателя. Клиент может даже не заметить, что что-то выбрал и заплатил за это.

Мы вернули реальную проверку — на витрине и на сервере — без правки файлов ядра.

Что делает модуль

  • Убирает автовыбор. Обязательные Select/Radio показывают пустой пункт "Пожалуйста, выберите один"; при попытке оформить заказ без выбора — стандартная ошибка "поле обязательно для заполнения".
  • Проверяет на сервере. Даже если запрос дойдёт до корзины в обход формы — например, через быстрое добавление в корзину со страницы категории, где формы опций вообще нет — товар без выбранной обязательной опции будет отклонён.

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

Почему отдельный модуль, а не официальный обходной путь

Специалисты CS-Cart подтвердили эту регрессию на форуме в диапазоне версий 4.16.2–4.20.1 и предложили единственный обходной путь — закомментировать блок кода в fn.options.php ядра. Проблема в том, что этот же блок отвечает за подстановку разумного значения по умолчанию для всех остальных опций, а не только обязательных — поэтому его отключение ломает вещи, которые от него зависят: смену картинки при выборе, предпросмотр цены при загрузке страницы и работу быстрого добавления в корзину на страницах категорий.

Наш модуль воздействует только на опции, которые действительно обязательны, оставляя все необязательные опции без изменений. Мы также добавили жёсткую серверную проверку, которой для этих типов опций не было вообще никогда — ядро всегда проверяло "обязательность" только для опций типа "Файл" на этапе добавления в корзину.

Содержание

  1. Установка и первоначальная настройка
  2. Справочник по настройкам
  3. Проверка исправления на витрине
  4. Область применения и совместимость
  5. Известные ограничения

1. Установка и первоначальная настройка

Перейдите в МодулиУправление модулямиУстановить модуль, загрузите архив модуля и активируйте его. У модуля нет отдельного экрана управления — сразу после активации исправление применяется ко всем товарам с обязательной опцией Select box или Radio group в режиме "Одновременно". Все настройки находятся на собственной вкладке Настройки модуля.

screen-2.png

Рис. 2 — Модуль отображается как активный в разделе Модули → Управление модулями сразу после установки.

2. Справочник по настройкам

В таблице ниже перечислены все настройки на вкладке модуля.

Настройка Что делает
Применять жёсткую проверку к Выбор области действия: только Select box и Radio group (по умолчанию, соответствует точной формулировке бага на форуме CS-Cart) или дополнительно включить обязательные опции типа Checkbox.
Логировать заблокированные попытки добавления в корзину При включении каждый случай блокировки добавления в корзину из-за пропущенной обязательной опции записывается в журнал событий CS-Cart — удобно, чтобы заметить сломанную кастомизацию темы или бота, атакующего эндпоинт корзины.

03_settings_tab.png

03_settings_tab.png

Рис. 3 — Вкладка настроек модуля с обеими опциями.

05_quick_add_blocked.png

Рис. 4 — Вкладка "Настройки: Журнал событий" с настройкой логирования модуля.

3. Проверка исправления на витрине

После активации модуля откройте любой товар с обязательной опцией Select box или Radio group в режиме "Одновременно" и убедитесь, что:

  • Опция показывает пустой пункт "Пожалуйста, выберите один" вместо предвыбранного варианта.
  • Нажатие Добавить в корзину без реального выбора показывает сообщение "поле обязательно для заполнения" и не добавляет товар.
  • Необязательные опции того же товара по-прежнему показывают привычный вариант по умолчанию и предпросмотр цены — без изменений.

04_before_after_comparison.png

Рис. 5 — Сравнение: страница товара до установки модуля (опция тихо предвыбрана) и после (пустой плейсхолдер, показано сообщение об обязательности).

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

05_quick_add_blocked.png

Рис. 6 — Уведомление об ошибке при использовании иконки быстрого добавления в корзину для товара с невыполненной обязательной опцией.

4. Область применения и совместимость

Модуль меняет поведение только для опций, у которых параметр Обязательная установлен в Да, и только для товаров, у которых Тип опций установлен в Одновременно. Опции в режиме Последовательно не затрагиваются, поскольку в этом режиме опции и так раскрываются постепенно по мере выбора покупателя, и этот сценарий не входил в исходное описание бага.

Проверено на CS-Cart от 4.16.0 до 4.20.1. Модуль использует только стандартные, документированные хуки CS-Cart и не изменяет ни одного файла ядра, поэтому ожидается, что он переживёт обновления ядра в этом диапазоне версий без переустановки. При обновлении выше 4.20.1 мы рекомендуем повторно проверить работу модуля и сообщить нам результат в любом случае — мы с готовностью расширим диапазон совместимости.

5. Известные ограничения

Модуль решает именно ту регрессию, что описана на форуме CS-Cart: обязательные опции Select box и Radio group в режиме "Одновременно". Обязательные опции типа Checkbox можно опционально включить на вкладке настроек, но поскольку группа чекбоксов может допускать несколько выборов, "обязательность" трактуется как "выбран хотя бы один вариант". Обязательные опции типа Файл не затрагиваем, поскольку CS-Cart уже корректно проверяет их самостоятельно.

Payment type
One-time payment
Продукт
  • Store Builder
  • Store Builder Plus
  • Store Builder Ultimate
  • Multi-Vendor
  • Multi-Vendor Plus
  • Multi-Vendor Ultimate
Совместимость с версиями
  • 4.21.1
  • 4.20.1
  • 4.19.1.SP2
  • 4.19.1.SP1
  • 4.19.1
  • 4.18.4
  • 4.18.3
  • 4.18.2.SP1
  • 4.18.2.
  • 4.18.1.SP1
  • 4.18.1
  • 4.17.2.SP3
  • 4.17.2.SP2
  • 4.17.2.SP1
  • 4.17.2
  • 4.17.1
  • 4.16.2
  • 4.16.1
Локализации
  • English
  • Русский
Анонимный
Преимущества
This Add-on restores product "required options" functionality again! Easy install
Недостатки
None found so far
Комментарий
Thank you - It works great and was very much needed!
Мы занимаемся CS-Cart с 2014 года Когда ежедневно работаешь с одной платформой много лет,

Контактная информация

Телефон +79782855558
Веб-сайт

Мы занимаемся CS-Cart с 2014 года

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

С 2014 года мы создаём интернет-магазины, маркетплейсы и корпоративные решения на CS-Cart. В нашей команде работают сертифицированные специалисты CS-Cart, а уровень экспертизы подтверждён официальной сертификацией платформы. Мы выполняем разработку вплоть до уровня ядра CS-Cart, поэтому не ограничиваемся типовыми настройками и можем реализовать действительно сложную функциональность.

За плечами наших разработчиков участие в проектах СДЭК.Маркет, Big.ru и других крупных eCommerce-решениях. Этот опыт позволяет быстро принимать технические решения и избегать ошибок, которые обычно появляются только после нескольких лет практики.

Мы ценим время клиентов. Поэтому не затягиваем согласования, соблюдаем договорённости, спокойно воспринимаем обратную связь и всегда стараемся найти решение, которое принесёт максимальную пользу бизнесу, а не просто выполнить очередную задачу.

Кроме разработки и написания модулей для CS-Cart, мы предлагаем поддержку вашего интернет-магазина.

Даем гарантии, что ваш проект будет работать без сбоев - мы настроены на долгосрочное сотрудничество и взаимную выгоду.


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


Turnkey website and online store development, pricing | IP5


Order website promotion, turnkey SEO optimization, pricing | IP5

Website and online store analytics, data analysis pricing | IP5


Website and online store support services | IP5

Вас может заинтересовать

Полностраничное кеширование страниц магазина + HTML Minify
4.9 (42)
$85.00
$120.00
Скидка 29%
Увеличивает скорость работы интернет-магазина. Улучшает СЕО-рейтинг сайта. Повышает конверсию.
Изображения в формате WebP
4.9 (9)
$60.00
Конвертирует изображения магазина в современный формат WebP: при том же качестве файлы весят в среднем на четверть меньше, чем PNG и JPG. Если браузер не поддерживает формат, покупатель увидит исходную картинку.
Универсальный модуль CDN для cs-cart
5.0 (7)
$50.00
  • Ускоряет работу сайта.
  • Снижает нагрузку на сервер.
  • Поднимает в поисковой выдаче.
Журнал и фоновая отправка писем
5.0 (6)
$60.00
Выносит отправку писем в фоновый процесс: страницы оформления заказа и регистрации перестают ждать почтовый сервер. Все письма попадают в журнал с поиском, предпросмотром и ручной переотправкой.
Advanced Security
5.0 (5)
$65.00

Универсальный набор инструментов для проверки информационной безопасности вашего проекта с функциональностью усиления безопасности для CS-Cart и Multi-Vendor

Performance Checker And Optimizer
5.0 (5)
$75.00

Многофункциональный набор инструментов для оптимизации CS-Cart и Multi-Vendor с расширенными инструментами для повышения производительности и её автоматической проверки