PHP Class Smile\ElasticsuiteCatalog\Model\Layer\Filter\Attribute

Author: Aurelien FOUCRET ([email protected])
Inheritance: extends Magento\CatalogSearch\Model\Layer\Filter\Attribute, implements Smile\ElasticsuiteCatalog\Model\Layer\Filter\FilterInterface
Show file Open project: smile-sa/elasticsuite

Protected Properties

Property Type Description
$currentFilterValue array

Public Methods

Method Description
__construct ( Magento\Catalog\Model\Layer\Filter\ItemFactory $filterItemFactory, Magento\Store\Model\StoreManagerInterface $storeManager, Magento\Catalog\Model\Layer $layer, Magento\Catalog\Model\Layer\Filter\Item\DataBuilder $itemDataBuilder, Magento\Framework\Filter\StripTags $tagFilter, Mapping $mappingHelper, array $data = [] ) Constructor.
addFacetToCollection ( $config = [] ) {@inheritDoc}
apply ( Magento\Framework\App\RequestInterface $request ) {@inheritDoc}
hasMoreItems ( ) : boolean Indicates if the facets has more documents to be displayed.

Protected Methods

Method Description
_getItemsData ( )
_initItems ( )
getFilterField ( ) : string Retrieve ES filter field.

Private Methods

Method Description
addOptionsData ( array $items ) : array Resort items according option position defined in admin.
getFacetConfig ( array $config = [] ) : array Retrieve configuration of the facet added to the collection.
getFacetSize ( ) : integer Current facet size.

Method Details

__construct() public method

Constructor.
public __construct ( Magento\Catalog\Model\Layer\Filter\ItemFactory $filterItemFactory, Magento\Store\Model\StoreManagerInterface $storeManager, Magento\Catalog\Model\Layer $layer, Magento\Catalog\Model\Layer\Filter\Item\DataBuilder $itemDataBuilder, Magento\Framework\Filter\StripTags $tagFilter, Mapping $mappingHelper, array $data = [] )
$filterItemFactory Magento\Catalog\Model\Layer\Filter\ItemFactory Factory for item of the facets.
$storeManager Magento\Store\Model\StoreManagerInterface Store manager.
$layer Magento\Catalog\Model\Layer Catalog product layer.
$itemDataBuilder Magento\Catalog\Model\Layer\Filter\Item\DataBuilder Item data builder.
$tagFilter Magento\Framework\Filter\StripTags String HTML tags filter.
$mappingHelper Smile\ElasticsuiteCore\Helper\Mapping Mapping helper.
$data array Custom data.

_getItemsData() protected method

protected _getItemsData ( )

_initItems() protected method

protected _initItems ( )

addFacetToCollection() public method

{@inheritDoc}
public addFacetToCollection ( $config = [] )

apply() public method

{@inheritDoc}
public apply ( Magento\Framework\App\RequestInterface $request )
$request Magento\Framework\App\RequestInterface

getFilterField() protected method

Retrieve ES filter field.
protected getFilterField ( ) : string
return string

hasMoreItems() public method

Indicates if the facets has more documents to be displayed.
public hasMoreItems ( ) : boolean
return boolean

Property Details

$currentFilterValue protected property

protected array $currentFilterValue
return array