Liquid、JavaScriptなどに関する質問
テーマ:Dawn7.0(Dawn以外でも起こります)
商品ページに下記のコードをいれて、
sizeメタフィールドを表示(空白なら非表示)を行いたいと思ってます。
他のメタフィールドでは可能なのですが、
sizeだけは非表示にならず0が表示されてしまいます。
size1や、size2などならば、非表示になります。
{% if product.metafields.custom.size != blank -%}
Size:
{{ product.metafields.custom.size }}
{% endif %}
いろいろ探したところ、下記と同じような現象だと思います。
https://community.shopify.com/c/shopify-design/product-page-hide-a-collapsable-row-with-blank-metafi...
Shopify のバグでしょうか?
いまのところ、対処法として、size以外のメタフィールドに書き換えることしかできないのかを確認したいです。
メタフィールドを使用する際に注意する文字列などご存知の方がいらっしゃいましたら、
ご教示願います。
解決済! ベストソリューションを見る。
成功
YUKI-Jさん、はじめまして。
Tsunの小笠原と申します。
> if product.metafields.custom.size != blank
こちらの書き方ですと、product.metafields.customというオブジェクトのサイズを返すためうまく判定できていないのかなと思います。
参考: https://shopify.dev/api/liquid/filters/size#size-dot-notation
{% if product.metafields.custom.size.value != blank -%}
Size:
{{ product.metafields.custom.size.value }}
{% endif %}
のようにvalueを取得するとsizeという名称のままでもうまく判定できると思います。
参考: https://shopify.dev/api/liquid/objects/metafield#metafield-access-metafields
成功
YUKI-Jさん、はじめまして。
Tsunの小笠原と申します。
> if product.metafields.custom.size != blank
こちらの書き方ですと、product.metafields.customというオブジェクトのサイズを返すためうまく判定できていないのかなと思います。
参考: https://shopify.dev/api/liquid/filters/size#size-dot-notation
{% if product.metafields.custom.size.value != blank -%}
Size:
{{ product.metafields.custom.size.value }}
{% endif %}
のようにvalueを取得するとsizeという名称のままでもうまく判定できると思います。
参考: https://shopify.dev/api/liquid/objects/metafield#metafield-access-metafields
小笠原様
早速のご返信ありがとうございました!
お返事が遅くなり申し訳ありません。
valueをつけて、複数のテーマを確認したところ、全て思い通りに表示されました。
とても助かりました。
Shopifyペイメント決済サービスを利用していて、ストアの管理画面の通知セクションに突然「Shopifyペイメントの使用を継続するために必要な情報」というバナーメッセージが表示さ...
By Mirai Dec 3, 2023すべてのShopifyアカウントはデフォルトではmyshopify.comのURLと関連付けられており、これはアカウント設定時に使用したビジネス名に基づいて作成されます。しかし、オ...
By Nina_13 Nov 26, 2023このトピックは英語版コミュニティの投稿:Shopify Web Pixel Manager Sandbox FAQの日本翻訳です。
By Mirai Nov 19, 2023