Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
FiltersProvider.php
Go to the documentation of this file.
1 <?php
6 declare(strict_types=1);
7 
9 
10 use Magento\Catalog\Model\Layer\FilterListFactory;
12 
17 {
21  private $layerResolver;
22 
26  private $filterableAttributesListFactory;
27 
31  private $filterListFactory;
32 
38  public function __construct(
39  Resolver $layerResolver,
40  FilterableAttributesListFactory $filterableAttributesListFactory,
41  FilterListFactory $filterListFactory
42  ) {
43  $this->layerResolver = $layerResolver;
44  $this->filterableAttributesListFactory = $filterableAttributesListFactory;
45  $this->filterListFactory = $filterListFactory;
46  }
47 
54  public function getFilters(string $layerType) : array
55  {
56  $filterableAttributesList = $this->filterableAttributesListFactory->create(
57  $layerType
58  );
59  $filterList = $this->filterListFactory->create(
60  [
61  'filterableAttributes' => $filterableAttributesList
62  ]
63  );
64  return $filterList->getFilters($this->layerResolver->get());
65  }
66 }
__construct(Resolver $layerResolver, FilterableAttributesListFactory $filterableAttributesListFactory, FilterListFactory $filterListFactory)