Shopify paginate 翻页后筛选条件丢失怎么处理
现象#
集合页加了颜色筛选,点第二页筛选全部重置,或者翻页后仍显示筛选前的商品。
原因#
- 翻页链接只带了
page参数,没有把筛选参数拼回去 - 筛选是在前端 JS 做的,翻页重新请求时没有重新应用
- 用了
collection.products而不是collection.products的筛选结果集 paginate的by值与筛选后的总数不匹配,导致末页空白
处理步骤#
- 翻页链接改为
{{ paginate | default_pagination }}的替代写法,手动拼上现有 query:?page={{ next_page }}&{{ request.query_string }}需去重 page 参数 - 用 Shopify 原生筛选
collection.filters,它自带参数保持 - 前端筛选时把筛选状态写进 URL,翻页时从 URL 恢复
- 确认
paginate包在筛选后的循环外层,而不是里面
验收标准#
带筛选参数点第 2 页,URL、商品列表、筛选选中态三者一致;末页无空白。
本文由 风格技术 技术团队整理,适用于 Shopify 标准版与 Plus 店铺。Shopify 平台能力迭代较快,具体操作路径与字段以官方文档和店铺后台实际版本为准。