← inaro.devShopify学習ツール
12-06

ダイナミックソースで運用に乗せる

セクション/ブロックの設定をメタフィールドに接続し、テンプレート共通の実装で商品ごとに値を変えられる

最終確認: 2026-09

解説

受託の現場でなぜ必要か: この回では、セクションやブロックの設定をメタフィールドに接続し、1つのテンプレートで商品ごとに違う値を出せるようになります。
受託では、「商品ごとに違うバナー」を商品ごとのテンプレートで作るとテンプレート数の上限と保守で破綻するので、まずダイナミックソースを検討します。

ダイナミックソースとは、設定にメタフィールドを繋ぐ仕組み

テーマエディタで設定の「ダイナミックソースを接続」を選ぶと、テンプレートJSONやsettings_data.json"{{ product.metafields.custom.material }}"のような参照が保存されます。
描画のときに、この参照が実際の値に置き換わります。
セクション側のLiquidは、通常どおり`section.settings.x`を読むだけです。

文脈で解決先が変わる

どのメタフィールドが候補になるかは、テンプレートの文脈で決まります。
productテンプレートでは商品の、collectionではコレクションのメタフィールドです。
pageではページの、テーマ設定ではショップのメタフィールドです。
だから1つのproductテンプレートで、「商品ごとに違う内容」が出せます。
テンプレートを商品ごとに増やすより、上限と保守性の両方で有利です。

設定の型とメタフィールドの型は対応が要る

接続できるのは、設定の型とメタフィールドの型が対応している組み合わせだけです。
image_pickerには画像のfile_referencerichtextにはrich_text_fieldtextには単一行テキスト、urlにはurlproductにはproduct_referenceが対応します。
完全な対応表は公式で確認します。

発展:標準定義とカテゴリメタフィールド

Shopifyが用意する標準定義(素材・色など)と、商品カテゴリに紐づくカテゴリメタフィールドは、フィルタや販売チャネルでも使われます。
独自の定義を作る前に、まず標準の定義を検討します。

ステップ1 / 2

ShopifyはShopify Inc.の商標です。本サイトは個人が制作した非公式の学習教材であり、同社の承認・提携・後援を受けていません。記載内容は2026-09時点のものです。料金・上限値・管理画面のラベルは変わるため、作業の前に公式ドキュメントで確認してください。