【问题标题】:Looping through metafields in shopify在shopify中循环元字段
【发布时间】:2016-10-21 07:28:14
【问题描述】:

我需要在 shopify 中显示产品的 n 数量的图像。

我在元字段中存储了许多图像并为它创建了一个循环。

然后每个图像的名称都存储在一个元字段中,我试图通过循环来获得它。

{% assign earrings = product.metafields.earrings %}

{% for i in (1..earrings.total-earrings) %}
  {% assign earring = 'product.metafields.earring-' | append:i %}
  {{ earring.name }}
{% endfor %}

这个循环给了我earring 的值,比如:
product.metafields.earring-1
product.metafields.earring-2

但是当我试图读取元字段earring.name 的值时,我没有得到任何输出。我认为因为product.metafields.earring-1 是一个字符串。

是否有任何可能的方法来遍历像这样的元字段并获取值?

【问题讨论】:

  • 小问题:您为什么使用元字段而不是产品图片?
  • 这是因为设计的复杂性和对产品图像的要求。
  • @AlokJain.. 除非您将图像存储在 Shopify 的 CDN 之外,否则@Alice 的问题是正确的。 Shopify 的 CDN 具有额外的优势。您始终可以配置图像循环。其次,您只需要使用一个元字段来存储所有图像或单一类型的数据。将它们添加为由不同字符分隔的字符串。然后使用| split: 用法来创建和排列并循环它。减少服务器负载。

标签: shopify liquid


【解决方案1】:

以防万一它对某人有帮助。

这是更新后的代码:

{% assign earrings = product.metafields.earrings %}

{% for i in (1..earrings.total-earrings) %}
  {% assign dummy = 'earring-' | append:i %}
  {% assign earring = product.metafields[dummy] %}
  {{ earring.name }}
{% endfor %}

【讨论】:

    猜你喜欢
    • 2022-06-17
    • 2023-02-08
    • 2021-11-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多