我正在嘗試創(chuàng)建一個(gè)自定義命令,在其中我想利用 Shopware 6 的動(dòng)態(tài)產(chǎn)品組功能來(lái)獲取與特定產(chǎn)品組(又稱(chēng)產(chǎn)品流)中的過(guò)濾器匹配的產(chǎn)品。我這樣做是為了最初獲取流,但我不知道如何應(yīng)用過(guò)濾器來(lái)獲取產(chǎn)品。 $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給了我在產(chǎn)品流中應(yīng)用的過(guò)濾器數(shù)組,但由于不同的預(yù)期類(lèi)型,它并不直接適用于criteria->addFilter()。和productCrossSellings關(guān)聯(lián)productExports也全部返回null(雖然我不知道這些變量有什么用,但我想也許它在內(nèi)部以某種方式用于獲取該組的關(guān)聯(lián)產(chǎn)品)。所以我的問(wèn)題是,我們?nèi)绾潍@得與產(chǎn)品組中的過(guò)濾器匹配的產(chǎn)品?
1 回答

天涯盡頭無(wú)女友
TA貢獻(xiàn)1831條經(jīng)驗(yàn) 獲得超9個(gè)贊
您可以檢查\Shopware\Core\Content\ProductStream\Service\ProductStreamBuilder
它的使用方式\Shopware\Core\Content\Product\SalesChannel\CrossSelling\SalesChannelCrossSellingController::loadProductsForCrossSelling
我希望這會(huì)有所幫助。
- 1 回答
- 0 關(guān)注
- 167 瀏覽
添加回答
舉報(bào)
0/150
提交
取消