【问题标题】:Printing Product Variant HS Codes打印产品变体 HS 代码
【发布时间】:2018-04-24 00:00:02
【问题描述】:

我正在尝试使用 Liquid 模板语言在 Shopify 中创建自动商业发票。除了存储为变体元字段的 IMPORT/EXPORT 协调代码(HS 关税代码)外,我一切正常。每当我尝试使用以下代码将它们打印出来时,都会出现空白:

{% for line_item in line_items %} {{ line_item.variant.metafields.global_harmonized_system_code }} {% endfor %}

有人可以帮我提取每个产品变体的这些 HS 代码,并使用液体提取元字段将它们打印在商业发票上吗?

【问题讨论】:

  • 您确定您要提取的数据确实存在于您的平台中吗?如果您只使用{% line_items %},您会看到什么?
  • 我遇到的问题是弄清楚元字段的名称,然后如何直接访问它。我知道系统中存在该值,并且批量访问此特定元字段的 URL 是:/admin/bulk?resource_name=Product&order=title+asc&edit=variants.metafields_global_harmonized_system_code
  • 我试图了解问题是出在逻辑上还是出在您正在处理的数据上。如果您只使用{% line_items %},您会看到什么?如果它不返回任何内容,则说明您正在对空对象运行 if 语句。
  • global_harmonized_system_code 不是命名空间吗?您的元字段键在哪里?
  • Adriano,当我尝试将 {% line_items %} 添加到我的模板时,出现错误。 {% line_items.title %} 工作正常。

标签: shopify liquid


【解决方案1】:

全局是一个命名空间,试试:

{{ line_item.variant.metafields.global.harmonized_system_code }}

语法是:

{{ your_object.metafields.namespace.key }}

【讨论】:

  • 好的,所以我尝试了 {{ line_item.variant.metafields.global_harmonized_system_code }} 并得到了一个空白。我确实验证了 line_items 确实为每个变体配置了 HS CODE,它是 TRUE。
  • 但您必须尝试使用​​ {{ line_item.variant.metafields.global.harmonized_system_code }}(全局后的一个点)
  • 对不起。我确实按照您输入的内容进行了尝试...我只是将错误的测试行复制回了对您的回复中。我刚刚再次验证,{{ line_item.variant.metafields.global.harmonized_system_code }} 不起作用。
【解决方案2】:

您的 Liquid 不足以完成手头的任务。

 {{ line_item.variant.metafields.global_harmonized_system_code }}

该输出无效。它可能指向一组一个或多个键值对,因此您应该对其进行迭代。示例:

{% for mf in line_item.variant.metafields.global %}
  {% if mf | first == 'harmonized_system_code' %}
     <p> {{ mf | last }} how is that for some value! </p>
  {% endif %}
{% endfor %}

类似的东西更精确,并且会通过变体元字段允许您选择要打印的元字段。

【讨论】:

  • 这没有打印出任何东西。不知道为什么。
  • 确保您的元字段存在。易于审核,只需安装带有插件 ShopifyFD 的 Chrome 浏览器,您就可以看到您的元字段。只有这样,如果它们是正确的,你的循环才能输出它们的信息。
  • 嗨,大卫。我安装了 ShopifyFD,我可以验证元标记(准确输入)是“global.harmonized_system_code”,它包含一个值“570650”
  • 这是你的新代码... {% for mf in line_item.variant.metafields.global %} {% if mf | first == ''harmonized_system_code" %}

    {{ mf | last }} 对于某个值来说,它怎么样!

    {% endif %} {% endfor %}
  • global 是你的命名空间,harmonized_system_code 是你的键,它有一个值......
【解决方案3】:

我可以使用这个

{{ line_item.variant.metafields.harmonized_system_code.value }}

【讨论】:

    猜你喜欢
    • 2022-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-30
    • 2016-08-13
    • 2016-11-27
    • 1970-01-01
    相关资源
    最近更新 更多