If you want to set an item "On Sale" in Magento you have to set a "Special Price". Special prices enable you to define a discounted price for a product for a specified period of time.

My question is how can I add a link in my layered navigation to display all my "On Sale"/"Special Price" items.


1 Answer 1


There isn't an easy way to create an "On Sale" button in your layered navigation since 3 attributes make up the "On Sale": Special Price, Date From, Date To.

To have one link or option for "On Sale" you would have to add a new attribute to products named "On Sale" or something along that line.

It would have to be a dropdown, with for example the options "Yes" and "No" which would enable you to also turn on Use In Layered Navigation for this attribute.

Now you can set it to "Yes" for all products that have a special price. This does require you to actually set the attribute so no nice automation going in and out of sale on the from and to date but it would give you the desired effect on the frontend.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.