Shopware 6 API产品列表接口如何获取商品可用颜色变体?
Shopware 6 Store API 获取产品列表颜色变体解决方案
要在/store-api/product-listing/{categoryId}接口返回的产品中包含可用颜色变体,你原来的请求配置存在两个核心问题:一是未关联选项的分组信息,无法区分颜色类选项;二是未获取产品变体数据,无法完整拿到所有可用颜色选项。以下是修正后的请求配置及说明:
修正后的请求体
{ "includes": { "product": ["id", "productNumber", "cover", "options", "productVariants"], "product_option": ["id", "name", "media", "group"], "product_option_group": ["id", "name", "type"], "product_variant": ["id", "options"] }, "associations": { "options": { "associations": { "group": [] } }, "productVariants": { "associations": { "options": { "associations": { "group": [] } } } } } }
配置说明
- 关联选项分组:通过
options.group获取选项所属的分组信息,可通过分组的type字段(通常颜色分组的type为color)筛选出颜色类选项。 - 关联产品变体:
productVariants会返回该产品下的所有变体,每个变体的options字段包含对应的颜色属性,能完整收集所有可用颜色变体。 - 字段精简:可根据实际需求删减
includes中的字段,比如不需要变体ID可以去掉product_variant里的id。
前端处理建议
拿到返回数据后,你可以:
- 遍历产品的
options或productVariants.options,筛选出group.type === 'color'的选项。 - 去重相同颜色的选项,整理成商品列表页需要展示的颜色集合。
内容的提问来源于stack exchange,提问作者Orhan Bayram
相关产品推荐
相关产品推荐

