首先显示具有高库存的商品

时间:2013-06-09 09:59:20

标签: magento

我想首先向客户展示库存量较高的产品,以便快速清理库存。如何在magento 1.7.2中执行此操作?

我安装了此扩展“Creatuity corp Sort by”但需要手动点击按数量排序。我默认需要这样做。

提前致谢。

3 个答案:

答案 0 :(得分:0)

是的,你可以抛出这个步骤

要做到这一点,好的帖子是Click

更优雅的解决方案是在

中进行更改
.../Mage/Catalog/Model/Layer.php at line #102

$collection->joinField('inventory_in_stock', 'cataloginventory_stock_item', 'is_in_stock', 'product_id=entity_id','is_in_stock>=0', 'left')->setOrder('inventory_in_stock', 'desc');

这将同时影响列表和结果页面。

另一件事是要记住将此文件从核心复制到

code/local/Mage/Catalog/Model/Layer.php 

以便核心文件保持不变。

请告诉我是否可以为您提供更多帮助。

答案 1 :(得分:0)

您可以使用我的免费扩展程序。它不会强制按价格排序功能。

https://github.com/MaximusDecimus/ShowInStockFirst

使用1.8.0.0进行测试

答案 2 :(得分:0)

请将文件从app/code/core/Mage/Catalog/Block/Product/List.php复制到此文件夹app/code/local/Mage/Catalog/Block/Product/List.php,如果不存在则创建类别。

编辑以下第46行:

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

为:

$this->_productCollection = $layer->getProductCollection()->joinField('inventory_in_stock', 'cataloginventory_stock_item', 'is_in_stock', 'product_id=entity_id','is_in_stock>=0', 'left')->setOrder('inventory_in_stock','desc');

希望这有效:)