2017-03-03 6 views
0

私はShopifyストア内のコレクションにメタフィールドを追加しました。私は名前空間、キー、値を持っています。私は、コレクションに特定のメタフィールドキーがあるかどうかを確認する液体コードスニペットを探しています。そうであれば、割り当てられた値を出力します。If Collection MetafieldのためのStatement - Shopify

ノー成功を収めて次のことを試してみました:

{% if relationship = collection.metafields.parent %} 
    <span>{{ relationship.parent[value] }}</span> 
{% endif %} 

誰も私がこの機能を実装する方法の任意のアイデアを持っていますか?

ありがとうございました。

+0

変数 'relationship'、' value'、 'collection.metafields.parent'の内部にあるものは何ですか? 'collecation.metafields.parent'は名前空間であり、特定のメタファイルではないでしょうか? – Sam

+0

注:Liquid!のif文の中に変数を代入することはできません。 –

答えて

0

私はあなたがmetafield、またはmetafield内の値のより具体的存在の存在を確認したい場合は、あなたが行うことができると思います:

{% if collection.metafields.parent['metafield_name'] %} 
    <span>{{ collection.metafields.parent['metafield_name'] }}</span> 
{% endif %} 

これが含まれているものの値を取っていますそれが真実か偽の型の値を返すかどうかを調べることです。値がtrueの場合(メタフィールドにテキストがある場合)、それが画面に出力されます。

+0

空のメタフィールドはfalse-yなので、 '.size> 0 '部分は必要ありません。 –

+0

@DaveBにはそこにはドキュメントがあります。なぜなら、いつも私が 'console.info()'の空のメタフィールドが空になっているからです。 – Sam

+0

console.log/info/warnは中止され、何も渡されなければ何もしないと思います。何かが常にコンソールに表示されるように 'console.info({{metafield | json}})'や 'console.info( 'Metafield:'、{{metafield | json}})を試してみてください。 –