В этой серии мы сделали корзину: завели в собственном модуле mibazarow.bxstore доменный слой (ORM-таблицы корзины и позиций, сервис с добавлением и подсчётом) и собрали компонент мини-корзины mibazarow:small.basket, который выводится в шапке сайта. Кнопка «в корзину» в карточке товара теперь добавляет товар без перезагрузки страницы через AJAX-действие на контроллере Bitrix Framework,
Шапка сама обновляется: показывает количество и сумму заказа. Разметку и стили виджета перенесли внутрь компонента, корзину гостя привязали к cookie, а цена и итоги всегда считаются на сервере из данных каталога.
Полная версия этой серии доступна на Boosty — с расширенным разбором и без обрезки.
Перейти к серии