How to make a custom attribute in magento to show as range in layered navigation like price any ideas please help

  • guys any help on this please
    – Bharath
    Jul 7 '14 at 7:23

So in principle what you will need to do is create your own model for the filter and then in this model create a function _getItemsData. This function will create all the filter items that need to be shown, in your case the different ranges. Each item should be in the following format.

$data[] = array(
    'label' => 'String To show for the filter',
    'value' => $fromValue . '-' . $toValue,
    'count' => 'How many items are in this range',

When you create a filter block you can attach a model for calulating it's data via $this->_filterModelName = 'your/layer_filter_model';

How to add new filters I am not completely sure but once that has been sorted the key is getting the data items. You can look into how the price filter works and mirror this.

  • 1
    Thanks for your suggestion david.What i did is select type as price when creating new attribute. That worked for me a bit.
    – Bharath
    Mar 18 '15 at 20:53
  • 3
    @Magesavvy welcome back to the site! You should make your solution an answer if possible so others can more accurately see what you've done :D Mar 19 '15 at 12:39

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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