/** * @param int[] $categoryIds * @param ShopContextInterface $context * @return Criteria */ public function createBaseCriteria($categoryIds, ShopContextInterface $context) { $criteria = new Criteria(); $criteria->addBaseCondition(new CategoryCondition($categoryIds)); if ($this->config->get('hideNoInstock')) { $criteria->addBaseCondition(new IsAvailableCondition()); } $criteria->addBaseCondition(new CustomerGroupCondition([$context->getCurrentCustomerGroup()->getId()])); return $criteria; }