Magento 2レイヤードナビゲーションで複数のカテゴリフィルターを実装する方法


19

階層化されたナビゲーション用に複数のカテゴリフィルターを実装しています。要件に従って結果を取得していますが、コレクションサイズが間違っているのは、親カテゴリのコレクションサイズと同じままです。

この機能を実装する他の方法はありますか。

私は次のコードを変更しました:

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;
    }

交換しaddCategoryFilter($category)addCategoriesFilter('eq' => $categoriesArray);

しかし、階層化されたナビゲーションのカウントは、製品コレクションではなく、他のどこかから来ています。

どこから知りたいですか。そして、そこに複数のカテゴリーフィルターを適用するにはどうすればよいですか?


1
コードを共有してもらえますか?どのファイルでコレクションをフィルタリングしましたか?
Codrain Technolabs Pvt Ltd

1
コードを追加してください
Pankaj Bhope

1
ファイル名またはパスも教えてください。
Codrain Technolabs Pvt Ltd

1
ファイル名:Category.phpパス:root_dir / vendor / magento / module-catalog-search / Model / Layer / Filter / Category.php
Pankaj Bhope

回答:



弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.