テンプレート:JSONとLiquid
JSONテンプレートの構造を読み、カスタムテンプレートでページ種別ごとの構成を作れる
最終確認: 2026-09
解説
受託の現場でなぜ必要か: この回では、JSONテンプレートの構造を読み、カスタムテンプレートでページ種別ごとの構成を作れるようになります。
受託では「キャンペーン用の商品ページを作りたい」という定番の依頼を、この仕組みで解決します。
JSONテンプレートとは、セクションの並びを書いたファイル
JSONテンプレートは、sectionsとorderの2つでできています。sectionsのキーがセクションID、typeがsections/のファイル名、settingsとblocksがその値です。orderが並び順です。
エディタで「セクションを追加」すると、このファイルが書き換わります。
商品ごとに構成を変えられる(カスタムテンプレート)
product.landing.jsonのように「種別.名前.json」の名前で作ると、カスタムテンプレートになります。
管理画面で、商品ごとに割り当てます。
キャンペーンLPや、特定カテゴリ専用のレイアウトの定番の手段です。
エディタからも作れます。
Liquidテンプレートが残る場面
gift_card.liquid、robots.txt.liquid、agents.md.liquid、llms.txt.liquidは、公式がJSONにできないと定めているテンプレートです。
JSONにできるものは、JSONにします。
従来の顧客アカウント用のtemplates/customers/*.liquidは、新しく作るテーマに含めません。
発展:上限と、手で書き換えるときの注意
1テンプレートに置けるセクション数と、1セクションのブロック数には上限があります(執筆時点の公式値: セクション25・ブロック50。テーマあたりJSONテンプレート1,000)。
LPを1テンプレートに詰め込みすぎる設計は、この上限に当たります。
JSONを直接編集しても反映されますが、エディタでの変更と衝突することがあります。
公開中のテーマのJSONを手で触るときは、エディタ側の変更を先に取り込みます。
※ ShopifyはShopify Inc.の商標です。本サイトは個人が制作した非公式の学習教材であり、同社の承認・提携・後援を受けていません。記載内容は2026-09時点のものです。料金・上限値・管理画面のラベルは変わるため、作業の前に公式ドキュメントで確認してください。