【问题标题】:Shopify site liquid does not support pagination on array variablesShopify 站点液体不支持对数组变量进行分页
【发布时间】:2018-02-22 12:41:36
【问题描述】:

这是我试图实现但无法实现的场景:

在我的 collection.liquid 页面的顶部,我这样做:

{% assign sorted_products = collection.products| sort: 'tags'%}
{% paginate sorted_products by 15%}

但是,这将导致以下错误:

液体错误:数组“sorted_products”不可分页。

我知道我可以通过 collection.products 进行分页,但那样我会失去按标签排序。

这是按预期布置网站所必需的 - 任何人都知道我如何在 Shopify 中解决此问题?

编辑

在另一个网站上提出这个问题后,我得到了以下回复?

但是当一个产品有多个标签时会发生什么?无论如何,标签不是字符串,而是数组 - 对其进行排序不会得到预期的结果。

这个想法仍然不适用于分页,因为您只会对分页集而不是整个集合进行排序。

如果您需要对整个集合进行排序,则需要使用 JavaScript(使用 ajax)拉入所有产品,使用 JavaScript 使用所需的任何方法对这些产品进行排序,然后将产品插入 DOM。


现在我已经创建了 JS 文件,但我似乎无法从液体文件中调用它

有什么想法吗?

【问题讨论】:

  • 你确定{% assign sorted_products = collection.products| sort: 'tags'%} 有效吗?
  • 排序工作正常 - 它显示的排序列表不起作用 - 我知道的原因是因为如果对所有产品进行排序,那么它们会正确显示。我知道你要说数组中的标签,你不能按它排序,但我们只有一个标签,这似乎工作正常。

标签: ajax shopify liquid liquid-layout


【解决方案1】:

我设法通过分页来做到这一点,但 限制要高得多;然后我可以排序并得到我需要的东西。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-03-16
    • 2021-01-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-05
    • 1970-01-01
    相关资源
    最近更新 更多