Конфигуратор цветов товара Minishop2 на MIGX+ColorPicker
Всем привет!
Встретил такую интересную задачу от заказчика: сделать возможность настраивать цвета каждого товара индивидуально, с указанием названия цвета + выбора цвета из палитры.
Minishop2 (я уверен, пока что) даёт возможность только создать опцию «Множественный список цветов», где к сожалению нет возможности распределить цвета по конкретным товарам, и нет визуальной палитры. Т.е. вписывать HEX придётся вручную…
Поэтому, я пошёл по другому пути, используя ТВ поле MIGX в котором палитрой будет играть роль ещё одно ТВ поле ColorPicker.
Давайте посмотрим, какой результат мы хотим получить в конечном итоге:
Итак, начнём.
1) Создаём ТВ поле «colorpicker» с типом ввода «ColorPicker». Привязывать к шаблону товаров не надо, это поле «техническое».
2) Создаём конфигурацию MIGX, называем — «colors».
Вкладка «Settings»:
Вкладка «Formtabs»:
Вкладка «Columns»:
3) Создаём ТВ поле «colors» с типом ввода «migx», указываем в «Конфигурации» — colors. Во вкладке «Доступно для шаблонов» привязываем к шаблону товаров.
4) Теперь давайте перенесём наш «конфигуратор» к полям товара во вкладку «Свойства товара».
Примечания:
Спасибо за внимание!
Встретил такую интересную задачу от заказчика: сделать возможность настраивать цвета каждого товара индивидуально, с указанием названия цвета + выбора цвета из палитры.
Minishop2 (я уверен, пока что) даёт возможность только создать опцию «Множественный список цветов», где к сожалению нет возможности распределить цвета по конкретным товарам, и нет визуальной палитры. Т.е. вписывать HEX придётся вручную…
Поэтому, я пошёл по другому пути, используя ТВ поле MIGX в котором палитрой будет играть роль ещё одно ТВ поле ColorPicker.
Давайте посмотрим, какой результат мы хотим получить в конечном итоге:
1) Создаём ТВ поле «colorpicker» с типом ввода «ColorPicker». Привязывать к шаблону товаров не надо, это поле «техническое».
2) Создаём конфигурацию MIGX, называем — «colors».
Вкладка «Settings»:
- name — colors
- Замена «Добавить элемент» — Добавить цвет
Вкладка «Formtabs»:
- В «Fields» добавляем новый элемент, «Caption» — Добавить цвет.
- Открываем редактирование созданного элемента. Далее в «Fields» добавляем 2 поля — name и color
- Поле name:
- «Fieldname» — name
- «Caption» — Название
- Поле color:
- «Fieldname» — color
- «Caption» — Цвет
- «Input TV» — colorpicker (т.е. тут мы привязываем ранее созданное ТВ поле с плалитрой...)
Вкладка «Columns»:
3) Создаём ТВ поле «colors» с типом ввода «migx», указываем в «Конфигурации» — colors. Во вкладке «Доступно для шаблонов» привязываем к шаблону товаров.
4) Теперь давайте перенесём наш «конфигуратор» к полям товара во вкладку «Свойства товара».
- Открываем в настройках справа наверху «Настройка форм».
- Нажимаем «Создать новый профиль»
- Назовём например «AddColors»
- Ставим галочку «Активный»
- Редактируем созданный профиль. Нажимаем «Новый набор правил»
- «Действие» — Обновить ресурс
- «Шаблон» — Выбираем из списка шаблон товаров
- Редактируем созданный набор правил. Вкладка «Дополнительный поля (TV)». Находим поле «colors» и заменяем у него значение в столбце «Регион»… на Ваш выбор:
Примечания:
- Фильтровать товары по данным цветам — как по ТВ полю MIGX, т.е. цвета не попадают в msProductData!
- Выводить как ТВ поле MIGX — через сниппет getImageList
- Как добавить TV-поле товарам в письмо заказа
Просто вписываем сниппету msGetOrder параметр 'includeTVs' => 'colors'. Доступно оно будет в шаблоне письма в цикле $products, и вызывается вот так: $product.colors - P.S. Статья обязательно будет дописана по использованию этих полей в: корзине и заказе.
Спасибо за внимание!
Комментарии: 2
Цвета надо каждый раз вписывать иоли автодополнение есть?
Каждый раз, для каждого товара вписывать индивидуально. Такая была задача от заказчика.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.