尽管有非常谨慎的逻辑将all_products
的唯一使用次数保持在20以内,但我们在Shopify商店上有一个页面正在触发此错误:
Liquid error: Exceeded maximum number of unique handles for all_products.
使用相同模板的其他页面运行良好,因此该页面的独特之处引起了另外的all_products
参考。 (我知道它只有一个,因为错误发生在我期望对该对象的第19个引用和第20个引用之间。)
尽管对我们的代码进行了跟踪,但我无法弄清楚在哪里发生了额外的引用。有什么方法可以确定所有页面上所有引用的发生位置,甚至只是引用了哪些句柄?
答案 0 :(得分:1)
我遇到了这个错误,很烂。
除了在每个all_product之后使用{{递增}}并查看其吐出物外,没有其他方法可以输出我所知道的液体数字。
在部分主题设置中,已经通过多种方法解决了这一问题,但是没有一种方法比产品选择器更容易。
肮脏不堪,您可以将产品选择器交换为文本输入,并让客户端在其中添加产品句柄,然后使用JS进行渲染。
我发现对客户更友好的方法是与页面同名的集合,让他们使用集合选择器,并使工作流按所需顺序填充20(+)产品。让他们从集合中安排订单。