Sort Product List to show Out of Stock items after in stock items with magento 1.8
-
16-10-2019 - |
Question
The product list pages are currently set to show out of stock products. I would like to show these products after the In Stock items. Thanks.
Solution
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');
}
Note: Tested on 1.7.0.2, I guess it will work on 1.8, too.
Licensed under: CC-BY-SA with attribution
Not affiliated with magento.stackexchange