Для Creatium разработано несколько компонентов, которые способны зашифровать параметры товара в формате json и передать их в корзину как часть названия товара. Такие компоненты есть у нашей студии (смотри по ссылке).
Наш компонент «Корзина с дополнительными опциями товара» позволяет вынимать из jsom переданные параметры и показывать их в корзине. При этом сам код json пользователь не видит: он видит просто название товара и другие параметры в отведённых для них местах.
В примере ниже видна как новая, так и старая цена.
В качестве дополнительного параметра передана старая цена
Весь остальной функционал корзины сохраняется.
Компонент состоит из двух частей. Вот первая часть компонента. Это скрипт, который будет осуществлять всё преобразование в карточке товара, но не будет сохраняться и не будет виден пользователю после сохранения.
Скриптовая часть компонента
Скрипт завязан на класс upline-cart в шаблоне карточки товара, о чём он сам и сообщает.
На скриншоте ниже мы видим, как будет выглядеть название с json, если его не скрить.
Код json в названии товара
Вторая часть компонента — cart-changer встраивается в карточку товара в корзине. Cart-changer позвляет вытащить параметры из кода json, помещённого в название товара.
Настройка cart-changer
А вот в это поле мы пишем название вынимаемого из кода и подменяемого на странице параметра, например, name.
Поле для указания имени нужного класса
Важно указывать также класс js_put для заменяемого объекта. Данный класс используется в том числе и для того, чтобы скрывать пустые поля. Чтобы скрыть поле имеется чекбокс под строкой для ввода названия поля.
Класс js_put указываем вот здесь:
Поле, куда следует добавлять js_put
Скрытое поле не будет никак отображаться: у него даже не будет высоты. Полезно это, когда у вас, например, разные товары с разными параметрами И тогда разные параметры можно полностью скрывать.
Вот ещё один cart-changer для подмены текста о старой цене:
Ещё один cart-changer для подмены текста о старой цене.
Данный элемент будет развиваться и дальше. В частности, планируется иметь возможность передавать в корзину картинку, соответствующую опции, и обратную ссылку из корзины на карточку товара.
Работает на Creatium