我正在尝试创建一个自定义命令,在其中我想利用 Shopware 6 的动态产品组功能来获取与特定产品组(又称产品流)中的过滤器匹配的产品。
我这样做是为了最初获取流,但我不知道如何应用过滤器来获取产品。
$streamCriteria = new Criteria($productStreamIds);
$streamCriteria->addAssociation('productCrossSellings');
$streamCriteria->addAssociation('productExports');
$streamCriteria->addAssociation('filters');
$streams = $this->streamRepository->search($streamCriteria, $context)->getEntities();
/** @var ProductStreamEntity $stream */
foreach ($streams as $stream) {
foreach ($stream->getFilters() as $filter) {
$productCriteria->addAggregation($filter); // DOES NOT WORK
$productCriteria->addFilter($filter); // DOES NOT WORK EITHER
}
}
我试图获取这filters给了我在产品流中应用的过滤器数组,但由于不同的预期类型,它并不直接适用于criteria->addFilter()。
和productCrossSellings
关联productExports
也全部返回null
(虽然我不知道这些变量有什么用,但我想也许它在内部以某种方式用于获取该组的关联产品)。
所以我的问题是,我们如何获得与产品组中的过滤器匹配的产品?
天涯尽头无女友