我有System->Configuration->Catalog->Inventory->Display Out of Stock Products
選項設置爲No
。Magento隱藏缺貨產品
但是這個缺貨的產品仍然存在於類別列表中。這個配置選項是否適用於產品收集?如何隱藏類別產品集合中的缺貨產品?
我有System->Configuration->Catalog->Inventory->Display Out of Stock Products
選項設置爲No
。Magento隱藏缺貨產品
但是這個缺貨的產品仍然存在於類別列表中。這個配置選項是否適用於產品收集?如何隱藏類別產品集合中的缺貨產品?
爲了使這項工作,你應該去System->Configuration->Catalog->Catalog
和設置Use Flat Catalog Product
至Yes
。之後剛剛推出Product Flat Index
請執行以下操作。
進入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;
}
這將隱藏斷貨的產品或從頂部菜單中的空語類。
您可能需要重建索引。 (系統 - >索引管理) – Marius