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

layout/theme.liquid

theme.liquidの必須要素を説明し、全ページ共通の変更を安全に加えられる

最終確認: 2026-09

解説

受託の現場でなぜ必要か: この回では、theme.liquid(全ページの外枠になるファイル)を安全に触れるようになります。
受託では全ページに効く変更をここで行うので、消してはいけない2行を知らないと全ページを壊します。

theme.liquidとは、全ページの外枠

layout/theme.liquidは既定のレイアウトで、テーマに必須の唯一のファイルです。
<head>のメタ情報やCSS・JSの読み込み、ヘッダーとフッターの差し込み、本文の差し込み位置を担います。
password.liquidや独自のレイアウトも、同じ形(<html></html>content_for_headercontent_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に直接貼りません。
同意の管理と衝突し、テーマを替えるたびに移植が要るからです。
チャネルアプリか、カスタムピクセルで入れます。

公式ドキュメント

ステップ1 / 2

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