Gets the fields on which the product might be filtered in the catalog view.
public getFilters ( ) : mixed | ||
return | mixed |
/** * Generates the filters menu based on $productProvider * * @param ProductProviderInterface $productProvider * @param array $itemOptions * @param string $currentUri * * @return mixed */ public function createFiltersMenu(ProductProviderInterface $productProvider, array $itemOptions = array(), $currentUri = null) { $menu = $this->factory->createItem('filters', $itemOptions); $filters = $productProvider->getFilters(); foreach ($filters as $filter => $options) { $menuItem = $menu->addChild($filter, array_merge(array('attributes' => array('class' => 'nav-header')), $itemOptions)); foreach ($options as $option) { $filterItemOptions = array_merge(array('uri' => $this->getFilterUri($currentUri, $filter, $option)), $itemOptions); $menuItem->addChild($this->getFilterName($filter, $option), $filterItemOptions); } } return $menu; }