階層化されたナビゲーション用に複数のカテゴリフィルターを実装しています。要件に従って結果を取得していますが、コレクションサイズが間違っているのは、親カテゴリのコレクションサイズと同じままです。
この機能を実装する他の方法はありますか。
私は次のコードを変更しました:
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
コードを追加してください
—
Pankaj Bhope
ファイル名またはパスも教えてください。
—
Codrain Technolabs Pvt Ltd
ファイル名:Category.phpパス:root_dir / vendor / magento / module-catalog-search / Model / Layer / Filter / Category.php
—
Pankaj Bhope