How to make a custom attribute in magento to show as range in layered navigation like price any ideas please help
1 Answer
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.
- 1Thanks for your suggestion david.What i did is select type as price when creating new attribute. That worked for me a bit.Bharath– Bharath2015-03-18 20:53:46 +00:00Commented Mar 18, 2015 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 :Deasymoden00b– easymoden00b2015-03-19 12:39:53 +00:00Commented Mar 19, 2015 at 12:39