我将 Wordpress、Woocommerce、WooGraphQL、React 和 Next 用于无头电子商务解决方案,将 SSG 和 SSR 用于 SEO 和性能。
在类别页面上填充产品过滤器时,我担心性能。我只想显示与搜索匹配的产品相关的过滤器。
假设示例:
- 产品搜索产生 500 个结果。
- 使用 GraphQL 请求前 12 个产品的数据以显示在首页上。
- (问题)获取数据以填充所有 500 种产品的过滤器。
就我而言,过滤器是产品类别,每个产品都链接到 3 个类别。
我唯一能想到的就是请求所有 500 种产品的数据,然后遍历数组中的每个产品,以便访问相关类别并填充过滤器。
在我的实际项目中,实际上可能不会超过 100 种产品,但理想情况下我希望采用可扩展的方法。
提取这么多数据是我应该关注的还是我想多了?(我猜不是)如果不是,那么解决此类问题的更好方法是什么?
示例 GraphQL 请求如下所示:
query MyQuery {
products(first: 500, where: {search: "something"}) {
nodes {
productCategories {
nodes {
name
}
}
}
}
}
我知道最好逐页地提取数据。但是收集这么多数据的问题仍然存在。