我为sales_quote_add_item
设置了一个观察者,以便在每次添加某个产品时清除购物车(它只能单独订购)。
我只是不确定如何获得即将添加的产品的产品ID。通过一些试验和错误我想出了这个:
$tmp = $observer->getEvent()->getQuoteItem()->getData();
echo $tmp['product_id'];
这似乎是一个非常难看的解决方案。我确定有一些快捷方式或适当的功能可以为此提出任何想法吗?
答案 0 :(得分:1)
使用以下代码获取报价项数据的产品ID
$cart = Mage::getModel('checkout/cart')->getQuote();
foreach ($cart->getAllItems() as $item)
{
$productId = $item->getProduct()->getId();
}
希望这对你有所帮助。
答案 1 :(得分:1)
你的解决方案已经足够了
$productId = $observer->getEvent()->getQuoteItem()->getProductId();
如果需要,您可以加载产品
$product = Mage::getModel('catalog/product')->load($productId);