MS2: Как реализовать несколько цен с опциям?
Суть: есть товар «Пицца», у него два размера, и два способа приготовления — итого 4 цены
Подскажите, пожалуйста, каким образом можно реализовать на «странице товара» выпадающий список с 4мя вариантами выбора, чтобы при выборе из списка сразу менялась цена и при клике на заказать товар с указанными опциями попадал в заказ.
С первой частью я понимаю как сделать через tv + js, но при добавлении товара в заказ он туда попадает с дефолтной ценой… ((
Подскажите, пожалуйста, каким образом можно реализовать на «странице товара» выпадающий список с 4мя вариантами выбора, чтобы при выборе из списка сразу менялась цена и при клике на заказать товар с указанными опциями попадал в заказ.
С первой частью я понимаю как сделать через tv + js, но при добавлении товара в заказ он туда попадает с дефолтной ценой… ((
Комментарии: 9
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Вывод заказов в админке пришлось переделывать, ещё не закончили правда.
Меньше бы работать пришлось и совместимость с будущими версиями бы сохранили.
Вот как можно, без изменения исходников:
Попроще: создавай 4 товара, и склеивай их через связи. Нужно будет написать простенький сниппет, который будет проверять, есть ли у товара нужные связи и выводить их в виде селектбокса.
При его переключении — перезагрузка на нужную страницу, или сразу добавление нужного id товара в корзину.
Посложнее: один товар, но у него создать специально поле (или использовать поле size). Туда писать варианты в формате «размер: цена», прямо из админки.
Другой простенький сниппет на сайте должен будет получать это поле, разбирать на варианты и выводить селектбокс с «размер — цена».
При его переключении ты меняешь цену на странице, скриптом, а при добавлении с корзину отправляешь размер на сервер, вместе с id.
А вот на сервере нужно получить поле со списком размеров и ценами, а потом выделить цену, соответствующую размеру. Тут либо кастомный класс корзины, либо используй системный параметр ms2_price_snippet — для указания сниппета, который будет это делать.
Таким образом, товар добавится в корзину с нужной ценой.
В общем, выбор за тобой.
Единственный «затык» — после нажатия кнопки отправки товара в заказ перестаёт работать onChange на селектбоксе и data-id не меняется. «Вылечил» убиванием модального окна со страницей товара (у меня так), но понимаю, что тоже не правильно…