[英]Put strings in arrays shopify liquid
在 shopify 中有帶有元字段的產品,其中包含多個數字。 這些數字代表產品內魚類的捕撈區域。 例如,對於產品 A,該值只是“27”,而對於產品 B,該值是“27/48”。 我的方法是創建一個數組並將值放入該數組中。 像這樣:如果元字段包含 27,則將“大西洋”放入數組中。 如果元字段包含 48,則將“太平洋”放入數組中。 最后我會打印出數組。 這是一個好方法還是有更好的方法? 謝謝
我只是假設將 Metafield 中的“大西洋”等保存為數組不是您的選擇。 所以這就是我將如何處理這個問題:
創建一個包含所有定義的全局元字段,如下所示:
{
"27": "Atlantic Ocean",
"48": "Pacific Ocean"
}
然后,在液體中:
{%- liquid
assign definitions = shop.metafields.namespace.key.value
assign parts = product.metafields.namespace_key.key.value | split: '/'
for part in parts
echo definitions[part]
unless forloop.index == parts.size
echo ', '
endunless
endfor
-%}
這將為產品 A 呈現:
Atlantic Ocean
對於產品 B:
Atlantic Ocean, Pacific Ocean
這樣,當您想添加新類型的海洋時,您可以輕松更新定義 JSON,而無需更新液體源代碼。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.