Magento - Sku从购物车中删除商品

时间:2013-08-12 16:00:40

标签: magento cart

我试图通过Sku从购物车中删除产品 - 是否有可能?

我在cartcontroller.php中尝试了以下代码,但没有成功....

我知道它应该通过ID工作,但Sku对我来说会更容易。

$session = Mage::getSingleton('checkout/session');
$quote = $session->getQuote();

$cart = Mage::getModel('checkout/cart');
$cartItems = $cart->getItems();

foreach($cartItems as $item) {
  if ($item->getSku() == promo){
    $quote->removeItem($item->getId())->save();
  }
}

Mage::getSingleton('checkout/session')->setCartWasUpdated(true);
$cart->init();

2 个答案:

答案 0 :(得分:1)

超级亲密......获取产品

if ($item->getProduct()->getSku() == promo){

答案 1 :(得分:1)

尝试

$cartHelper = Mage::helper('checkout/cart');
$items = $cartHelper->getCart()->getItems();
foreach ($items as $item) {
    if ($item->getProduct()->getSku() == 'promo') {
        $cartHelper->getCart()->removeItem($item->getItemId())->save();     
        break;
    }
}

请参阅How to remove item from quote in Magento?