先にやっておきたいtheme.jsonの設定があります。この設定は2回に分けて進めます。
この記事ではレイアウト幅とパーツ登録、次の記事ではカラーパレットの設定を行います。
theme.jsonはブロックテーマの「設定ファイル」です。色・幅・フォント・パーツ登録など、サイト全体に関わる設定をここで管理します。
contentSize・wideSizeって何?
テンプレートを組む前に、サイトの「幅」を決めておきましょう。
theme.json で設定する幅は2種類
幅の目安
💡 迷ったら contentSize: 800px・wideSize: 1200px からスタートするのがおすすめです。あとから調整できます。
サイドバーの有無
contentSize・wideSizeはページのレイアウトによって役割が変わります。
📄 サイドバーなし(1カラム)
contentSize
本文の幅
wideSize
画像など幅広表示の幅
📰 サイドバーあり(2カラム)
contentSize
本文エリアの幅
wideSize
本文+サイドバー全体の幅
💡サイドバーなしのページでは wideSize は幅広表示(画像など)に使われますが、
サイドバーありのページでは wideSize を「本文+サイドバー」の合計幅として設計するのがおすすめです。
👇 実際に体感してみよう
「ピンとこない…」という方は、まずシミュレーターで動かしてみるのが一番です。
【WordPress】ブロックテーマのレイアウトをシミュレーターで体感しよう!
ブロックテーマのレイアウト、なんとなく触っているけど「なぜこうなるの?」と思ったことはありませんか?
実は、ブロックテーマのレイアウトは たった3つの「幅…
appearanceToolsについて
appearanceTools: trueは、サイトエディターで使えるデザイン調整ツールを有効にする設定です。
エディターの設定パネルから余白・枠線・文字色などを調整するメニューを表示します。
使えるようになる主な調整
- ブロックの余白(padding・margin)
- 枠線の太さ・色・角丸
- リンクの色
- 見出しの文字色
useRootPaddingAwareAlignmentsについて
useRootPaddingAwareAlignments は、サイト全体の左右の余白(padding)を統一管理する設定です。
💡 useRootPaddingAwareAlignments: true にすることで、幅広ブロックや全幅ブロックを—それぞれ自動でいい感じに調整してくれます。
※「左右のpaddingを意識して全幅を制御する」という宣言なので。全幅ブロックを使うには、styles.spacing.paddingで左右の値の設定が必要です。
※appearanceTools: true とセットで使うのが基本です。この2つがそろって初めて、余白まわりが思い通りに動きます。
templatePartsについて
templateParts は、ヘッダーやフッターなどの共通パーツをWordPressに登録する設定です。
登録しないと、サイトエディターの「テンプレートパーツ」一覧に表示されず、ヘッダー・フッターとして正しく機能しません。
theme.jsonにまとめて追加しよう
ここまでの設定をまとめると、theme.json はこうなります。
{
"version": 3,
"settings": {
"appearanceTools": true,
"useRootPaddingAwareAlignments": true,
"layout": {
"contentSize": "800px",
"wideSize": "1200px"
}
},
"styles": {
"spacing": {
"padding": {
"top": "0px",
"right": "20px",
"bottom": "0px",
"left": "20px"
}
}
},
"templateParts": [
{ "name": "header", "title": "ヘッダー", "area": "header" },
{ "name": "footer", "title": "フッター", "area": "footer" },
{ "name": "sidebar", "title": "サイドバー", "area": "uncategorized" }
]
}サイドバー不要で、{ "name": "sidebar", "title": "サイドバー", "area": "uncategorized" }を削除した場合:{ "name": "footer", "title": "フッター", "area": "footer" }← ,カンマを必ず削除しましょう。
🖊️ theme.json の編集方法
ツール(or外観) → テーマファイルエディター を開く
theme.json を選択
💡 theme.json を管理画面で編集したら、そのコードを手元のファイルにコピペして保存しておきましょう。再インストールや万が一のトラブルのときに役立ちます。
💡 「テンプレートパーツが認識されているか」を「外観」→ 「エディター」 → 「パターン」 → 「テンプレートパーツ一覧」で確認しておきましょう。
JSONで迷子になったら
🤖 JSONで迷ったらまずAIに頼ろう
「カッコだらけで何がなんだか…」となったら、そのままAIに貼り付けて聞いてみましょう。
💬 「theme.jsonにカラーパレットを追加したいのですが書き方を教えてください」
エラー箇所を一瞬で見つけてくれます。ただ、ルールを少しだけ知っておくともっとうまく使えます👇
⚠️ よくあるミス① 最後のカンマ問題
❌ ダメな書き方
{
"slug": "primary",
"color": "#fff2b2", ← カンマ
}
✅ 正しい書き方
{
"slug": "primary",
"color": "#fff2b2" ← カンマなし
}
最後の項目の後ろにカンマをつけるとエラーになります。
「最後の子にはカンマなし」と覚えましょう!
🔄 正しく書いたのに反映されない 時は
JSONに間違いがないのに変更が反映されない場合は、キャッシュが原因かもしれません。
- ブラウザの強制リロード(Mac:Cmd+Shift+R / Win:Ctrl+Shift+R)
- キャッシュ系プラグインのキャッシュをクリア
- シークレットウィンドウで確認する
