我正在尝试为我的其他客户端集成购物车同步解决方案。 我的目标应该是无论我从哪里访问我的商店都可以拥有相同的购物车。
所以我首先必须使用经过身份验证的api-user将现有项目传递给客户端。
但是我一开始就陷入困境:
protected function _retrieveCollection()
{
$cart = Mage::getSingleton('checkout/cart')->getQuote();
$cart->setCustomerId($this->getApiUser()->getUserId());
$cart->setStoreId(4);
$cart->load();
return $cart->getAllItems();
}
即使我的购物车中有产品,也会返回一个空数组。
有人提示吗?有这种感觉我完全站在错误的一边......
答案 0 :(得分:0)
找到解决方案。获得客户的报价是相反的方式:
Mage::app()->setCurrentStore(4);
$cart = Mage::getModel('sales/quote')->loadByCustomer($this->getApiUser()->getUserId());
$items = array();
foreach ($cart->getAllVisibleItems() as $key => $item) {
$items[] = array(
'name' => $item->getName(),
'entity_id' => $item->getProductId(),
'description' => $item->getDescription(),
'final_price_with_tax' => $item->getBasePriceInclTax(),
'qty' => $item->getQty()
);
}