1 Отредактировано Андрей (24.09.2016 13:33:44)

Тема: Количество в корзине

Подскажите возможно ли вывести кол-во товара в корзине в списке товаров
Товар зеленый - 2 шт
Товар красный
Товар жёлтый -1 шт
Чтобы при нажатии на добавить в корзину число менялось?
http://s8.hostingkartinok.com/uploads/images/2016/09/07f6122e19a2c80cf74df24668e65036.jpg

Повысить оценку Понизить оценку

Re: Количество в корзине

Отобразить количество товара в корзине да, а вот изменить количество у конкретного товара пока нет.
Т.к. при помещении в корзину ответный json не содержит информации какой именно товар в корзине. Хотя это можно сделать просто при клике на саму кнопку просто увеличив количество в теге.
Для того, чтобы получить текущую корзину, можно воспользоваться static_call функцией
https://readyscript.ru/dev-manual/dev_s … tatic_call

С помощью неё можно получить текущую корзину в шаблоне со списком товаров (list_product.tpl в Вашей теме).

{static_call var=cart callback=['\Shop\Model\Cart', 'currentCart']}

Появится переменная $cart в шаблоне у которой можно получить все товары.

{static_call var=cart callback=['\Shop\Model\Cart', 'currentCart']} {* Получаем корзину в переменную *}
{$cart_products=$cart->getProductItems()} {* Получение товаров в корзине *}
{* Смотрим что внутри *}
<pre>
{var_dump($cart_products)} 
</pre>

3

Re: Количество в корзине

Закусило Александр пишет:

Отобразить количество товара в корзине да, а вот изменить количество у конкретного товара пока нет.
Т.к. при помещении в корзину ответный json не содержит информации какой именно товар в корзине. Хотя это можно сделать просто при клике на саму кнопку просто увеличив количество в теге.
Для того, чтобы получить текущую корзину, можно воспользоваться static_call функцией
https://readyscript.ru/dev-manual/dev_s … tatic_call

С помощью неё можно получить текущую корзину в шаблоне со списком товаров (list_product.tpl в Вашей теме).

{static_call var=cart callback=['\Shop\Model\Cart', 'currentCart']}

Появится переменная $cart в шаблоне у которой можно получить все товары.

{static_call var=cart callback=['\Shop\Model\Cart', 'currentCart']} {* Получаем корзину в переменную *}
{$cart_products=$cart->getProductItems()} {* Получение товаров в корзине *}
{* Смотрим что внутри *}
<pre>
{var_dump($cart_products)} 
</pre>

Мне нужно, что бы в иконке корзины выводилось количество товара в корзине.

Я думал, что если  static_call делать запрос на каждый товар, это сильно нагрузит страницу.
Я  ошибаюсь?

Повысить оценку Понизить оценку

Re: Количество в корзине

Мне нужно, что бы в иконке корзины выводилось количество товара в корзине.

Я думал, что если  static_call делать запрос на каждый товар, это сильно нагрузит страницу.
Я  ошибаюсь?

А что Вам мешает получить корзину выше чем перебираются товары? А внутри товара просто перебирать массив из товаров корзины.