2

在我的 magento 网站上可以看到缺货产品。我想要分层导航中的自定义过滤器,上面写着“排除缺货”,当客户点击它时,应该隐藏缺货产品。

(默认情况下,我在 System-> Configuration-> CATALOG-> Inventory 下启用显示/显示缺货产品)

即我希望客户控制他/她是否应该看到“缺货”产品。

例如 这个链接

有人可以帮忙吗?我希望以magento方式完成...

4

1 回答 1

1

这是开发工作。你需要雇一些人。

基本上你需要为产品创建属性。

例如。'排除_out_of_stock'。

那么你需要在 Mage/Catalog/Block/Product/List.php 中编码

调整function _getProductCollection()

$this->_productCollection = $layer->getProductCollection();

$this->_productCollection = $layer->getProductCollection();

if ($this->getRequest()->getParam('exclude_out_of_stock',0)) {

            $oCollection = Mage::getModel('cataloginventory/stock_item')
                ->getCollection()
                ->addFieldToFilter('is_in_stock',0);

            $oProducts = array();
            foreach($oCollection as $_collection) {
                $oProducts[] = $_collection->getProductId();
            }

            if(!empty($oProducts))
                $this->_productCollection->addIdFilter($oProducts,true);
}
于 2013-01-13T12:23:46.150 回答