Estou implementando vários filtros de categoria para navegação em camadas. Estou obtendo o resultado de acordo com meus requisitos, mas o tamanho da coleção está errado permanece o mesmo que o tamanho da coleção de categorias pai.
Existe alguma outra maneira de implementar essa funcionalidade.
Eu modifiquei o seguinte código:
public function apply(\Magento\Framework\App\RequestInterface $request)
{
$categoryId = $request->getParam($this->_requestVar) ?: $request->getParam('id');
if (empty($categoryId)) {
return $this;
}
$this->dataProvider->setCategoryId($categoryId);
$category = $this->dataProvider->getCategory();
**$this->getLayer()->getProductCollection()->addCategoryFilter($category);**
if ($request->getParam('id') != $category->getId() && $this->dataProvider->isValid()) {
$this->getLayer()->getState()->addFilter($this->_createItem($category->getName(), $categoryId));
}
return $this;
}
substituiu o addCategoryFilter($category)
poraddCategoriesFilter('eq' => $categoriesArray);
Mas como a contagem de navegação em camadas vem de outro lugar e não da coleção de produtos.
gostaria de saber de onde. E como eu poderia aplicar vários filtros de categoria lá?
magento2
category
layered-navigation
multiselect-attribute
Pankaj Bhope
fonte
fonte
Respostas:
Dê uma olhada na pesquisa que fiz sobre esta e a solução final (minha resposta à pergunta) aqui: Magento 2.1.6 Contagem de páginas da grade do produto e problema de contagem de registros ao adicionar programaticamente o filtro usando métodos diferentes
fonte
Para implementar o filtro de várias categorias no magento 2
fonte