К содержанию

miniShop2->cart->status() не верно считает кол-во товаров и их сумму

Привет. Подскажите плиз в чем проблема может быть?

Нашел некий код, который делает перерасчет заказа gist.github.com/grachov/7337b6ec98c05fbc4926

Если в покупке есть одинаковые товары (артикул), но с разыми характеристиками prnt.sc/rep5lt
то этот код не видит повторные продукты и не учитывает цены.

Если распечатать miniShop2->cart->status()
то получим
array (
'total_count' => 2,
'total_cost' => 10990.0,
'total_weight' => 1.4,
)

т.е. тут два товара и их сумма, а не 4 товара… из-за этого общая стоимость покупок сбивается.
UDAV
UDAV
11 марта 2020, 14:21
modx.pro
1 278
Реклама

Комментарии: 4

Артур Шевченко
12 марта 2020, 00:44
А почему ты решил что этот код должен что-то учитывать? Там нет ни одного сравнения свойств двух товаров, нет даже проверки артикулов. Честно говоря не понимаю для чего вообще этот код, если при изменении заказа стоимость и так пересчитывается. Если нужно работать с модификациями так для этого есть msOptionPrice, если охота самому это реализовать читай документы по minishop2 там написано какие события когда генерируются выбирай нужные пиши плагины.
    UDAV
    UDAV Старожил
    12 марта 2020, 07:52
    не совсем понимаю что нужно добавить. помоги пожалуйста.
    мне нужно чтобы при изменения способа доставки менялась стоимость заказа, в стандартном решении такого нет.
      Артур Шевченко
      13 марта 2020, 10:00
      Как это нет? В настройках minishop2 есть раздел способы доставки там указывается стоимость каждого и эта стоимость влияет на общую стоимость заказа.
        UDAV
        UDAV Старожил
        13 марта 2020, 10:04
        я про перерасчет заказа в админке.

        в общем сделал что мне нужно было, надо так код написать и будет все ок. Спасибо)
        'options' =>$product->get('options')
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    4