getFilters() public method

Gets the fields on which the product might be filtered in the catalog view.
public getFilters ( ) : mixed
return mixed
Example #1
0
 /**
  * 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;
 }