layout/theme.liquid
theme.liquidの必須要素を説明し、全ページ共通の変更を安全に加えられる
最終確認: 2026-09
解説
受託の現場でなぜ必要か: この回では、theme.liquid(全ページの外枠になるファイル)を安全に触れるようになります。
受託では全ページに効く変更をここで行うので、消してはいけない2行を知らないと全ページを壊します。
theme.liquidとは、全ページの外枠
layout/theme.liquidは既定のレイアウトで、テーマに必須の唯一のファイルです。<head>のメタ情報やCSS・JSの読み込み、ヘッダーとフッターの差し込み、本文の差し込み位置を担います。password.liquidや独自のレイアウトも、同じ形(<html>〜</html>、content_for_headerとcontent_for_layoutが必須)を持ちます。
どのレイアウトを使うかは、テンプレートのlayoutで切り替えます。
消してはいけない2行がある
{{ content_for_header }}は、Shopifyが必要とするスクリプト・メタタグ・アプリ埋め込みを出す行です。
削除も改変もできません。
{{ content_for_layout }}は、テンプレートの描画結果が入る場所です。
どちらか一方でも無いと、テーマは動きません。
ヘッダーはセクショングループで差し込む(直接HTMLは書かない)
ヘッダーとフッターは、{% sections 'header-group' %}と{% sections 'footer-group' %}で差し込みます。
セクショングループ(レイアウトに差し込むセクションの束)にしておくと、テーマエディタで編集できます。
ここに直接HTMLを書くと、エディタで編集できなくなります。
ヘッダーの文言を直したいお客さまが、毎回開発者に頼むことになります。
発展:lang属性・別レイアウト・分析タグ
<html lang="{{ request.locale.iso_code }}">と書くと、言語をロケールから出せます。password.liquidは、パスワード保護中のページ専用のレイアウトです。
GA4などの分析タグは、theme.liquidに直接貼りません。
同意の管理と衝突し、テーマを替えるたびに移植が要るからです。
チャネルアプリか、カスタムピクセルで入れます。
公式ドキュメント
※ ShopifyはShopify Inc.の商標です。本サイトは個人が制作した非公式の学習教材であり、同社の承認・提携・後援を受けていません。記載内容は2026-09時点のものです。料金・上限値・管理画面のラベルは変わるため、作業の前に公式ドキュメントで確認してください。