You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用BigCommerce无头CMS,如何通过GraphQL获取产品筛选选项?

解决BigCommerce GraphQL获取筛选器及对应选项的问题

你当前的GraphQL查询只请求了筛选器的名称字段,要获取每个筛选器对应的选项数据,需要扩展查询字段,同时可以指定目标类别来缩小范围。

以下是修正后的查询示例:

site {
  search {
    searchProducts(
      filters: {
        hideOutOfStock: true
        categoryIds: ["123"] # 替换为你要查询的类别ID
      }
    ) {
      filters {
        edges {
          node {
            name
            filterOptions {
              edges {
                node {
                  label
                  value
                  count # 可选,显示该选项下的产品数量
                }
              }
            }
          }
        }
      }
    }
  }
}

关键说明:

  • 获取选项数据:在筛选器的node下添加filterOptions字段,它会返回每个筛选器的具体选项列表,其中:
    • label:选项的显示文本(比如颜色的"红色"、品牌的"Nike")
    • value:用于后续筛选请求的参数值(比如品牌ID、属性值ID)
    • count:可选字段,显示该选项下的产品数量,帮助用户快速判断选项的实用性
  • 指定目标类别:通过filters里的categoryIds参数传入类别ID数组,就能获取该类别下的可用筛选器及选项
  • 关联已选筛选条件:如果需要基于用户已选的筛选条件(比如已经选了某品牌)获取剩余可用的筛选选项,只需在filters中添加对应的筛选参数(如brandIds: ["456"]),API会自动返回当前筛选状态下的有效筛选器及选项,和官方站点的逻辑一致

你可以用BigCommerce的GraphQL Explorer来测试这个查询,验证字段返回结果并调整所需的内容。

内容的提问来源于stack exchange,提问作者Agustin Manriquez Cruz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 05:02:59