我想先向客户展示库存高的产品,以便快速清理库存。如何在 magento 1.7.2 中执行此操作?
我安装了这个扩展“Creatuity corp Sort by”,但需要手动点击按数量排序。我需要默认这样做。
提前致谢。
我想先向客户展示库存高的产品,以便快速清理库存。如何在 magento 1.7.2 中执行此操作?
我安装了这个扩展“Creatuity corp Sort by”,但需要手动点击按数量排序。我需要默认这样做。
提前致谢。
You can use my free extension. It doesn't brake sorting-by-price functionality.
https://github.com/MaximusDecimus/ShowInStockFirst
Tested with 1.8.0.0
是的,你可以去扔这个步骤
要做到这一点,一个好的帖子是点击
一个更优雅的解决方案是在
.../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
以便核心文件保持原样。
让我知道我是否可以为您提供更多帮助。
请将文件从该文件夹复制app/code/core/Mage/Catalog/Block/Product/List.php
到该文件夹app/code/local/Mage/Catalog/Block/Product/List.php
,如果不存在则创建类别。
编辑以下行 #86 行:
$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');
希望这有效:)