我试图仅在当前报价(购物篮/结帐/销售订单)中修改产品的名称和sku,但我无法让它发挥作用。
我可以获得报价项目并更改其价格,但不是名称或sku。如果我从观察者那里得到产品,我可以设置名称和sku,但它会全局更改。
我的观察者观看了这个事件;
<checkout_cart_product_add_after>
<observers>
<Meltingpotdesign_Frs_Model_Observer>
<type>model</type>
<class>Meltingpotdesign_Frs_Model_Observer</class>
<method>addNewPrice</method>
</Meltingpotdesign_Frs_Model_Observer>
</observers>
</checkout_cart_product_add_after>
然后是功能;
public function addNewPrice(Varien_Event_Observer $observer)
{
$quoteItem = $observer->getQuoteItem();
// This doesnt do anything
$quoteItem->setSku('test1')->setName('newname')->save();
// This works, changing the price on the quote to the value $newprice
$quoteItem->setCustomPrice($newprice);
$quoteItem->setOriginalCustomPrice($newprice);
$quoteItem->setIsSuperMode(true);
// This gets the actual product
$item = $observer->getProduct();
// This sets the name and sku of product globally (not what I'm after!)
// $item->setSku('test1')->setName('newname')->save()
}
有人可以帮忙吗?
谢谢