当我按照以下文章进行操作时,Magento 会双重保存产品。
我添加了一个额外的字段,允许客户将博客文章链接到产品,但是当我把它放在$product->save()
那里时,它会双重保存产品。当您同时添加图像(或创建新产品)时,这会导致双图像
编辑:
下面是它保存的代码
public function saveProductTabData(Varien_Event_Observer $observer)
{
if (!self::$_singletonFlag) {
self::$_singletonFlag = true;
$product = $observer->getEvent()->getProduct();
try {
/**
* Perform any actions you want here
*
*/
$customFieldValue = $this->_getRequest()->getPost('blogIDs');
if(!empty($customFieldValue)){$blogIds = implode(',', @$customFieldValue);}
if(!empty($blogIds)) { $product->setBlogids($blogIds); } else { $product->setBlogids('0'); }
/**
* Uncomment the line below to save the product
*
*/
// $product->save();
}
catch (Exception $e) {
Mage::getSingleton('adminhtml/session')->addError($e->getMessage());
}
}
}
并在 config.xml
<events>
<catalog_product_save_before>
<observers>
<pmit_save_product_data>
<type>singleton</type>
<class>blogextend/observer</class>
<method>saveProductTabData</method>
</pmit_save_product_data>
</observers>
</catalog_product_save_before>
</events>