2012-10-08 48 views
2

默认行为: 当产品数量为0时 - 显示“缺货”消息。当产品库存时(库存由SAP更新),“缺货”消息将自动失效。Magento:产品的未禁用的自定义“缺货”消息有货

自定义行为: 但是,当选择“自定义缺货”消息并且产品变为库存时,无论出于何种原因,“自定义缺货”消息都不会被禁用。这必须在产品上明确进行。

-

寻找解决的办法之后,一个选择是购买/安装处理“缺货”的延伸产品,但有没有人找到了一种方法来在内部解决呢?

回答

1

如果qty> 0,则需要在更新期间将is_in_stock标志设置为'1'。如果这不适用于您的代码,那么您将需要选择库存量大于零的所有产品,并将它们设置为is_in_stock = 1。你可以将它作为一个独立的脚本来运行,而且在写入一个模块和将该模块放在一个cron作业上,在你的更新过程结束后将会响起。这里是伪代码:

$stockCollection = Mage::getModel('cataloginventory/stock_item')->getCollection()->addFieldToFilter('qty', array('gteq' => 1)); 

foreach($stockCollection as $item) { 
    $item->setIsInStock(1)->save(); 
} 
+0

您的解决方案似乎是合乎逻辑的。但是,我被告知这应该是magento中的默认行为,并且必须清除缓存以使自定义“缺货”消息被禁用。 – mangesh