Shopify アプリに関する話題はこちら
「Advanced Custom Fields」アプリをインストールして、https://help.advancedcustomfield.com/の公式ヘルプページを見ながら作業しています。
まず、問題なくできた範囲としては、
アプリ内でProductに新しいCustom Fieldsを追加して、そのMetafieldsを設定した後、テーマのproduct-template.liquidファイルにコード{{product.metafields.namespace.key}}を挿入して、該当のShopifyページにMetafieldsの内容が意図した通りに表示されるところまではできました。
そして、できていない内容としては、
アプリ内でProduct variantsに新しいCustom Fields(Namespace: Shipping、Key: Hokkaido)を追加して、そのCustom FieldsにMetafieldsを設定(¥3,300)して、上と同様にproduct-template.liquidファイルにコード{{variant.metafields.Shipping.Hokkaido}}を挿入してみましたが、該当のShopifyページにはMetafieldsの内容(¥3,300)が出力されません。
Product variantsの場合は、Productと違ってLiquidの記述方法などが異なるのでしょうか。
お分かりの方おられましたらアドバイスいただけますと幸いです。よろしくお願いいたします。
恐らくですが以下のようなfor文が抜けているのではと思われます。
{% for variant in product.variants %}
{{ variant.metafields.hoge.fuga }}
{% endfor %}
記載済みでしたら申し訳ありません。
jizoさん
アドバイスいただき、ありがとうございました。
ご指摘いただいた「for文」、確かに記述しておりませんでした!
お教えいただいたように、product-template.liquidに下記コードを追記しましたところ、登録したmetafieldは表示できました。
{% for variant in product.variants %}
{{ variant.metafields.Shipping.Hokkaido }}
{% endfor %}
ただ、その商品の全てのバリエーションのmetafieldがズラズラっと表示されてしまいましたので、
金額表示と同じように選択したバリエーションと対になったmetafieldのみを表示するには、<option>タグとの組み合わせなどが必要かな?と想像しました。
後でもう少しコードを工夫してみます。
数日間まともに動作させられずモヤモヤしていたのですが、ようやく光が見えてきました。
本当にありがとうございました!
いつもShopifyをご利用いただき、ありがとうございます。 Shopifyは、皆様の日本語での利用体験の向上に努めております。さらなる改善のために皆様のご意見をお寄せい...
By JasonH May 9, 2025Shopify アカデミーの学習パスと認定スキルバッジExpanding Your Shopify Business Internationallyを活用して、国際的にビジネ...
By Shopify Feb 7, 2025Shopify アカデミーの学習パスB2B on Shopify:立ち上げとカスタマイズで卸売販売に進出しましょう。これら3つの無料コースは、ShopifyストアでB2B機能...
By Shopify Jan 31, 2025