Работа с корзиной осуществляется с использованием контроллера Shop_Cart_Controller
, получение товаров, добавленных в корзину, осуществляется методом getAll($oShop)
, аргументом передается объект магазина.
<?php
// Контроллер корзины
$oShop_Cart_Controller = Shop_Cart_Controller::instance();
// Объект магазина, для которого получаем данные из корзины пользователя
$oShop = Core_Entity::factory('Shop', 5);
// Массив с данными о товарах в корзине
$aShop_Cart = $oShop_Cart_Controller->getAll($oShop);
foreach ($aShop_Cart as $oShop_Cart)
{
$oShop_Item = Core_Entity::factory('Shop_Item')->find($oShop_Cart->shop_item_id);
if (!is_null($oShop_Item->id) && $oShop_Item->active)
{
/**
$oShop_Cart имеет свойства:
* shop_item_id - ID товара
* quantity - количество товара в корзине
* postpone - товар отложен в корзине
* marking - явно указанный артикул
* shop_id - ID магазина
* shop_warehouse_id - ID склада, если был явно указан
* siteuser_id - ID пользователя сайта, если пользователь авторизован
*/
echo "<p>Товар ID {$oShop_Cart->shop_item_id}, название "
. htmlspecialchars($oShop_Item->name)
. ", количество: {$oShop_Cart->quantity}";
}
}