Настройка контактной информации, адреса и способа доставки
Здравствуйте.
В моём интернет-магазине мне требуются как минимум два
способа Доставки, базирующиеся на модуле «Курьер»:
Но поскольку по непонятным причинам системные поля «Город» и «Индекс», не смотря на их выбор в настройках Оформления заказа\Контактная информация\Поля адреса, не запрашиваются на шаге «Доставка» и к тому же их тип невозможно сделать Зависимым, мне пришлось:
1) в справочник «Страны и регионы» добавить «Россия» с кодом 99;
2) в настройках Оформления заказа\Контактная информация\Поля адреса создать два, по сути, дублирующие поля: «Почтовый индекс» и «Область / Город» зависимого от родительского поля «Область» типа.
3) Так как в настройках зависимости полей «IF родительское поле» только «=», то пришлось в качестве
значения поля «Почтовый индекс» для г. Москвы задать «для Московского региона
НЕ требуется», а в качестве значения поля «подъезд, этаж, домофон (код)» для «России»
задать «-».
После Вашего последнего обновления, фактически корректное оформление Заказа стало невозможным:
- зачем-то стали запрашиваться жёстко заданные поля в настройках способов Доставки «Страна» и «Область»;
- стало запрашиваться системное поле «Город», выключенное в настройках Оформления заказа\Контактная информация\Поля адреса;
- более не запрашиваются поля зависимого типа.
Исходя из выше изложенного, я предлагаю одновременно с исправлением ошибок глобально пересмотреть логику работы скрипта в части настроек Оформления заказа\Контактная информация\Поля адреса и модулей Доставки.
I. МАКCИМАЛЬНЫЙ вариант.
1. Настройки\Оформление заказа.
В настройках шага «Доставка» первый пункт изложить в следующей редакции:
Все поля адреса, обязательные для выбранного способа (подчёркнутое удалить из текста)
Запрашивать все поля адреса доставки, необходимые для работы выбранного модуля доставки (подчёркнутое заменить на выделенное курсивым) выбранные в настройках шага «Контактная информация». Если вы выбрали этот вариант и поместили шаг «Доставка» перед шагом «Контактная информация» в настройках оформления заказа, рекомендуется скрыть (отключить) поля адреса доставки в шаге «Контактная информация», чтобы не требовать их заполнения повторно.
Пояснения для разработчиков Webasyst: как системные, так и поля, СОЗДАННЫЕ И (логическое) ВЫБРАННЫЕ Администратором (например, Ваш академический пример из документации: поле со станциями метро, зависимое от родительского поля «Город») должны запрашиваться при выборе Покупателем того или иного способа Доставки. А уже каждый конкретный Модуль доставки будет использовать только те из этих полей, которые ему требуются в соответствии с его логикой работы.
2. Настройки\Страны и регионы:
Системное поле «Город» необходимо преобразовать в Справочник, подчинённый Областям, доступный для заполнения.
3. Настройки\Доставка:
В настройках модулей доставки необходимо:
3.1 Изменить выбор Областей с выпадающего списка на множественный выбор (чекбоксы);
3.2 Добавить множественный (исходя, разумеется, из подчинения Областям) выбор Городов (чекбоксы) или же оставить в виде строк списков Городов через запятую (как сейчас – менее наглядно, но компактнее).
II. МИНИМАЛЬНЫЙ вариант.
1. То же, что и в МАКСИМАЛЬНОМ варианте.
2. Настройки\Оформление заказа\Контактная информация\Поля адреса:
Системное поле «Город» позволить сделать Администратору Зависимым и, соответственно, заполняемым значениями.
(очевидные минусы: для каждого оператора «IF родительское поле» придётся каждый раз задавать значения Городов, зачастую пересекающиеся (например, две Транспортные Компании доставляют грузы в одни и те же города, но одна из них также доставляет в какой-нибудь другой город, в который другая не доставляет)
III. В настройки зависимости полей «IF родительское поле» помимо «=» добавить «<>» (НЕравно).
Реализация всего вышеизложенного позволит, наконец-то:
1) сделать одну из основополагающих Корзина – Оформление (Доставка , Оплата) функций любого интернет-магазина корректно и наглядно конфигурируемой;
2) фактически реализовать незаслуженно забытый из старого Webasyst Schop-Script способ Доставки «по Странам и Областям» с возможностью в дальнейшем создания сторонними разработчиками на основе обновлённых плагинов Доставки с добавлением функции тарификации;
3) позволит Покупателю прямо (как трамваю по рельсам )
дойти до конечной цели – покупки, исключая всевозможные ошибки при оформлении
Заказа (поле «Город» с маленькой буквы, орфографические и т.п. ошибки /
опечатки – при которых в текущей ущербной, да ещё и глючной реализации шаг
Доставка просто пошлёт Покупателя куда подальше – тупо не сработает).
0 комментариев