In an e-commerce store, it's essential to manage and display products based on their availability.
By default, Magento 2 displays out-of-stock products alongside in-stock products, which can confuse customers.
However, with the Magento 2.4.3-p1 update, it has become easier to prioritize and display out-of-stock products at the end of the page in the list.phtml template.
Method 1: Using addAttributeToSort()
One way to achieve this is by adding a custom attribute to sort the products. Open the list.phtml file located at MAGENTO\app\design\frontend\BASE\THEME\Magento_Catalog\templates\product\list.phtml and find the product collection query. Then, add the following line of code before the query
This code will sort the products based on their stock status, displaying the out-of-stock products at the end of the page.
Method 2: Using order()
Alternatively, you can use the order() method to order the products. Locate the product collection query in the list.phtml file and modify it as follows
This code will order the products in descending order based on their stock status, placing the out-of-stock products at the bottom.
Effectively managing and displaying out-of-stock products in an online store is crucial for a seamless shopping experience.
With the Magento 2.4.3-p1 update, you can easily prioritize and showcase out-of-stock items at the end of the page by using either the addAttributeToSort() or order() method in the list.phtml template.