Shopify检查Metafield是否存在?

JMK*_*ley 2 liquid shopify

我希望隐藏内容,如果某个产品的元字段为空,但现在它将为所有页面返回它,这意味着我的if语句在某处被破坏了.

产品页面

{% if product.metafields.review %}
  {% include 'extra-review' %}
{% else %}
{% endif %}
Run Code Online (Sandbox Code Playgroud)

查看代码段页面(extra-review.liquid)

{% assign review = product.metafields.review %}
{% assign key = 'author' %}
{% assign key = 'author-img' %}
{% assign key = 'long' %}

<p> Hello world </p>
Run Code Online (Sandbox Code Playgroud)

任何帮助都会很棒

编辑

添加了审核元字段布局

在此输入图像描述

Jas*_*son 8

要检查命名空间是否存在,您可以进行比较blank.例如:

{% if product.metafields.review != blank %}
  ...
{% endif %}
Run Code Online (Sandbox Code Playgroud)

size如果你想确保你有三个键,你也可以使用它.这里我们只输出大小:

{{ product.metafields.review.size }}
Run Code Online (Sandbox Code Playgroud)

有关truthy/falsy的更多信息可以在Shopify文档中找到:https://help.shopify.com/themes/liquid/basics/true-and-false