2013-07-24 173 views
4

我有System->Configuration->Catalog->Inventory->Display Out of Stock Products選項設置爲NoMagento隱藏缺貨產品

但是這個缺貨的產品仍然存在於類別列表中。這個配置選項是否適用於產品收集?如何隱藏類別產品集合中的缺貨產品?

+5

您可能需要重建索引。 (系統 - >索引管理) – Marius

回答

1

爲了使這項工作,你應該去System->Configuration->Catalog->Catalog和設置Use Flat Catalog ProductYes。之後剛剛推出Product Flat Index

1

請執行以下操作。

進入app/code/core/Mage/Catalog/Block文件夾並複製Navigation.php。在您的本地包中覆蓋Navigation.php。你的包 開放Navigation.php並粘貼在該文件下面的代碼:

if ($category->getIsActive()) { 

$cat = Mage::getModel('catalog/category')->load($category->getId()); 

$products = Mage::getResourceModel('catalog/product_collection')->addCategoryFilter($cat); 

Mage::getSingleton('catalog/product_status')->addVisibleFilterToCollection($products); 

Mage::getSingleton('catalog/product_visibility')->addVisibleInCatalogFilterToCollection($products); 

Mage::getSingleton('cataloginventory/stock')->addInStockFilterToCollection($products); 

if(count($products)==0) 

return; 

} 

這將隱藏斷貨的產品或從頂部菜單中的空語類。

相關問題