如何在magento中对库存状态的产品集合进行排序

时间:2016-09-03 07:59:41

标签: php xml magento zend-framework magento-1.9

我想在类别页面上对产品集合进行排序,以便在缺货产品之前出现库存产品。所有缺货产品将在库存产品后显示。我已经重写了Mage_Product_Block_List块。

1 个答案:

答案 0 :(得分:2)

You can use catalog_product_collection_load_before event.   
And in the observer:

public function modifyProductCollection(Varien_Event_Observer $observer) {
    //catalog_product_collection_load_before
    $collection = $observer->getCollection();

    $collection->getSelect()->joinLeft(
                array('_inventory_table' => $collection->getTable('cataloginventory/stock_item')),
                "_inventory_table.product_id = e.entity_id",
                array('is_in_stock')
            )
            ->order('is_in_stock DESC')
            ->order('created_at DESC');
}