我希望显示一个自定义字段(使用应用程序Shopify自定义字段)以显示除集合图像以外的其他图像(由于写的时间太长,我们无法使用集合图像)。现在,在此处使用自定义字段,该字段是文本字段(作为我们要使用的图像的绝对URL),位于
<img src="{{ collection.metafields.custom_fields["collection_list_image_url"] }}" alt="{{ link.title }}"/>
要获得正常的收藏图片,我可以使用它:
<img src="{{ link.object.image.src | collection_img_url: 'master' }}" alt="{{ link.title }}"/>
由于某种原因,图像未显示,并且在检查后显示img src不明。如果我们使用普通的集合图像,它确实可以工作。我是否需要添加一些内容才能使此自定义字段动态显示在导航菜单(链接列表)中的每个集合中?
我编写了以下代码:
<div class="collection-list">
{% for link in linklists.collection-list.links %}
<div class="box">
<a href="{{ link.url }}">
<img src="{{ collection.metafields.custom_fields["collection_list_image_url"] }}" alt="{{ link.title }}"/>
<div class="heading">
<h2>{{ link.title }}</h2>
<button type="button" class="btn btn-dark">shop now</button>
</div>
</a>
</div>
{% endfor %}
</div>
答案 0 :(得分:0)
您需要引用link.object
(并可能考虑到它可能不是集合的事实)。当您引用metafield键时,在单引号中嵌套单引号也是更好的语法:
<div class="collection-list">
{% for link in linklists.collection-list.links %}
{% if link.object == 'collection' %}
{% assign cf = link.object.metafields.custom_fields %}
<div class="box">
<a href="{{ link.url }}">
<img src="{{ cf['collection_list_image_url'] }}" alt="{{ link.title }}">
<div class="heading">
<h2>{{ link.title }}</h2>
<button type="button" class="btn btn-dark">shop now</button>
</div>
</a>
</div>
{% endif %}
{% endfor %}
</div>