Magento未能将所有其他产品添加到购物车中

时间:2014-05-28 11:30:15

标签: php magento cart

如上所述,我有一个奇怪的问题,我添加的其他所有产品都没有添加到购物车或Magento的报价中。

这是可重复的,因为我可以添加一个产品,然后下一个产品不添加(但我确实收到状态消息,说它已被添加),然后下一个完成后添加它应该做的。 / p>

它不是特定于某个产品,就像我第二次添加相同的产品一样,它会按预期添加。

我们唯一一个有点不同的是观察者在sales_quote_add_item事件上进行了调用,但这只是在改变定价:

public function update_book_price(Varien_Event_Observer $observer) {


//get the admin session
Mage::getSingleton('core/session', array('name'=>'adminhtml'));


if (!$quoteitem = $observer->getQuoteItem()){
    $quoteitem = $observer->getItem();
}
if (!$item = $observer->getEvent()->getQuoteItem()){
    $item = $quoteitem;
}
$quote = $item->getQuote();

$product = $item->getProduct();


        $price = Mage::helper('users')->getCustomerProductPrice(false,Mage::getModel('catalog/product')->load($product['product_id']),false,true,$_POST['qtys'][$product['product_id']]);

                    echo "Price : $price \n";
    //print_r($price);
    $price = $price;


        if(!$quoteitem->setOriginalCustomPrice($price)) {

            echo "Couldn't set price";


        }
        else {
                            echo "price updated, save";
                            try { 
                $quoteitem->getProduct()->setIsSuperMode(true);
                    var_dump($quoteitem->save());
                            }catch(Exception $e){
                                echo $e->getMessage() . "\n";
                            }

        }


    return $this;
}

我已经在数据库级别进行了检查,并且缺少的项目甚至没有在数据库中 - sales_flat_quote_item没有记录,但“工作”项目正常。

之前有没有人经历过这样的事情,或者有人可以建议我可以开始调查的地方吗?谢谢!

1 个答案:

答案 0 :(得分:1)

更改价格后,您无需保存报价项目。

删除var_dump($quoteitem->save());然后重试。