Magento Получает Выбранный Фильтр В Многоуровневой Навигации


В Magento, если в многоуровневой навигации выбран атрибут "цвет", значения "цвета" автоматически исчезают и отображаются результаты.Как получить имя выбранного фильтра?

 11
Author: pckabeer, 2012-08-08

1 answers

Все примененные фильтры хранятся в объекте состояния слоя. Вы можете легко получить их, используя следующий фрагмент кода:

$appliedFilters = Mage::getSingleton('catalog/layer')->getState()->getFilters();

Он вернет вам массив объектов элементов фильтра. Вы можете получить имя и примененное значение одного элемента фильтра, выполнив что-то вроде этого:

foreach ($appliedFilters as $item) {
    $item->getName(); // Name of the filter
    $item->getLabel(); // Currently selected value
    $item->getFilter()->getRequestVar(); // Filter code (usually attribute code, except category filter, where it equals "cat")
}
 31
Author: Ivan Chepurnyi, 2013-11-05 09:20:42