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
11 марта 2020, 14:21
modx.pro
548
0

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

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

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