I am currently using the following code to return the products in category with id
bulbsCategoryId (I get
bulbsCategoryId from configuration)
$collection = $this->_productCollectionFactory->create(); $this->_catalogLayer->prepareProductCollection($collection); $bulbsCategory = $this->_categoryFactory->create()->load($bulbsCategoryId); $collection->addCategoryFilter($bulbsCategory)
This works fine if
bulbsCategory is part of the store categories hierarchy. However I would like to use a category that is outside the store categories hierarchy (has a different roo category). Suppose I have the following categories:
Root (this is the store root category) Indoors lights Outdoors lights Light bulbs External Common light bulbs (I want to filter by this category)
All products in
Common light bulbs are also in
Light bulbs but not the other way around. In this case the above code returns no results.
Is there a way to achieve this in magento 2?
Or do I have to move
Common light bulbs under
Root and hide it?
(I am using magento 2.3.1 - no need for backward compatibility)