2026年7月22日

2026年7月22日

WordPressのアップデート後にサイドバーが消えたときの原因の見分け方と直し方

WordPress本体やテーマを更新したあとにサイドバーが消えた場合、多くは「ウィジェットの割り当てが外れた」「テーマのレイアウト設定やテンプレートが変わった」「CSSやキャッシュで見えなくなっているだけ」のどれかです。この記事では、ページのHTMLを見て原因の系統を3つに絞り込む方法と、可能性の高い順に確認と修正の手順をまとめます。作業の前に、データベースとファイルのバックアップを取っておいてください。

まず「HTMLがあるか」で原因の系統を分ける

いきなり設定を触る前に、サイドバーが「出力されていないのか」「出力されているのに見えないのか」「途中で出力が止まっているのか」を確かめます。対処がまったく違うからです。

サイドバーが消えたページをブラウザで開き、ページのソースを表示(またはデベロッパーツールの要素タブ)して、<aside、widget-area、sidebar、ウィジェットに含まれていたはずの文言などで検索します。

  • HTMLが無い: ウィジェットの割り当て、テーマのレイアウト設定、テンプレートの問題です。下の「原因1〜3」を確認します。
  • HTMLはあるが画面に出ない: CSSやキャッシュの問題です。「原因4」へ進みます。
  • 本文の途中やサイドバーの位置でHTMLが途切れ、フッターも無い: PHPのエラーで描画が止まっています。「原因5」へ進みます。

ログインした状態とログアウトした状態で表示が違う場合は、キャッシュの影響を強く疑います。シークレットウィンドウでも確認しておくと切り分けが早くなります。

原因1:ウィジェットが「使用停止中」に移動している

もっとも多いのがこのケースです。WordPressは、どのウィジェットをどのウィジェットエリアに置くかを、エリアのIDと組み合わせて保存しています。テーマの更新でウィジェットエリアのIDが変わったり、エリアの数が減ったりすると、そのエリアに入っていたウィジェットは行き場を失い、「使用停止中のウィジェット」に移されます。

確認は「外観」→「ウィジェット」で行います。ブロックベースのウィジェット画面では、画面下部に使用停止中のウィジェットのまとまりが表示されます(画面の表記はバージョンにより異なります)。中身が残っていれば、目的のウィジェットエリアへ移動して保存するだけで戻ります。

WP-CLIが使える環境では、エリアと割り当ての状態をコマンドで確認できます。

# 登録されているウィジェットエリアの一覧
wp sidebar list

# 使用停止中のウィジェットを確認
wp widget list wp_inactive_widgets

# ウィジェットを本来のエリアへ移動(IDは一覧の結果に置き換える)
wp widget move text-2 --sidebar-id=sidebar-1

wp sidebar list に、以前使っていたエリアが表示されない場合は、テーマ側がそのエリアを登録しなくなっています。テーマの更新履歴(changelog)でウィジェットエリアの変更が告知されていないか確認してください。

なお、WordPress 5.8でウィジェット画面がブロックエディター形式に変わりました。旧来の画面の方が作業しやすい場合は、WordPress公式チームが公開している「Classic Widgets」プラグインで従来の画面に戻せます。ただし、これは画面の切り替えであり、消えたウィジェットそのものを復元する機能ではありません。

原因2:テーマのレイアウト設定が変わった・リセットされた

多くのテーマは「サイドバーを右に表示」「1カラム(サイドバーなし)」といったレイアウト設定を、カスタマイザーや投稿ごとの設定欄に持っています。テーマのメジャーアップデートで設定項目の構成が変わると、既定値が「サイドバーなし」になったり、投稿・固定ページ・アーカイブで別々の設定に分かれたりすることがあります。

確認する場所は次の3つです。

  • 「外観」→「カスタマイズ」の中にあるレイアウトやサイドバーに関する項目
  • 投稿・固定ページの編集画面のサイドバーにある、テーマ独自のレイアウト設定
  • テーマ独自の設定画面(テーマによっては管理メニューに専用の項目があります)

項目名はテーマやバージョンによって異なるため、テーマの公式ドキュメントで「サイドバー」「レイアウト」に関する設定を探すのが近道です。特定のページだけ消えている場合は、そのページ個別の設定やページテンプレート(「1カラム」「全幅」など)が選ばれていないかを確認してください。

原因3:子テーマの古いテンプレートが新しい親テーマと合わない

子テーマに sidebar.php や page.php、single.php をコピーして編集している場合、親テーマが更新されてもコピーしたファイルは古いままです。親テーマ側でサイドバーの呼び出し方やエリアのIDが変わると、子テーマの古いテンプレートでは何も表示されなくなります。

子テーマのテンプレートでサイドバーを出している部分は、おおむね次のような形になっています。エリアIDが wp sidebar list の結果と一致しているかを確認します。

<?php if ( is_active_sidebar( 'sidebar-1' ) ) : ?>
	<aside id="secondary" class="widget-area">
		<?php dynamic_sidebar( 'sidebar-1' ); ?>
	</aside>
<?php endif; ?>

is_active_sidebar() は、そのエリアにウィジェットが1つも無いと false を返します。原因1でウィジェットが外れていると、テンプレートが正しくても何も出力されない点に注意してください。

切り分けとしては、子テーマのテンプレートファイルの名前を一時的に変える(例: sidebar.php を sidebar.php.bak に)と、親テーマのファイルが使われます。これで表示が戻れば、子テーマ側のテンプレートを親テーマの最新版をもとに作り直します。作業はステージング環境で行うのが安全です。

ブロックテーマの場合

Twenty Twenty-Two 以降の標準テーマのようなブロックテーマには、従来のウィジェットエリアがありません。サイドバーはテンプレートやテンプレートパーツの中にブロックとして組み込まれています。

ブロックテーマで注意したいのは、サイトエディターでテンプレートを編集すると、その内容がデータベースに保存され、テーマのファイルより優先されることです。テーマ更新で新しいテンプレートが入っても、以前に編集したテンプレートが使われ続けるため、表示が食い違うことがあります。「外観」→「エディター」でテンプレートを開き、カスタマイズ済みの印があるものは、必要に応じて内容を控えたうえでカスタマイズのリセットを検討します。クラシックテーマからブロックテーマへ切り替えた場合は、ウィジェットは表示されないので、テンプレート側にサイドバーを作り直すことになります。

原因4:CSSやキャッシュで見えなくなっている

HTMLはあるのに見えない場合、更新後のテーマのCSSとサイドバーの中身が合わず、サイドバーが本文の下に落ちていたり、幅が0になっていたりすることがあります。デベロッパーツールでサイドバーの要素を選び、display: none、width、float や grid の指定がどうなっているかを確認します。

よくあるのは、追加CSS(カスタマイザーの「追加CSS」や子テーマの style.css)に書いた古いクラス名向けの指定が、新しいマークアップと衝突しているケースです。追加CSSを一時的に外して表示が戻るかを試してください。

また、キャッシュ系や最適化系のプラグインがCSSを結合・圧縮している場合、古いCSSが配信され続けることがあります。プラグインのキャッシュ、サーバーのキャッシュ、CDNのキャッシュを順に削除し、ブラウザも強制再読み込みしてから再確認します。

原因5:ウィジェット内のPHPエラーで描画が止まっている

HTMLがサイドバーの位置で途切れているなら、ウィジェットやテーマのPHPコードがエラーで止まっています。プラグインやテーマの更新でPHPの互換性が崩れたときに起こりやすい症状です。

wp-config.php でデバッグログを有効にして、エラーの内容を記録します。本番環境では画面に表示させず、ファイルへの記録だけにします。

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );

ページを再読み込みし、wp-content/debug.log を開いて「Fatal error」の行を探します。エラーが出ているファイルのパス(plugins/プラグイン名/... など)から、原因のプラグインやテーマを特定できます。そのプラグインを更新するか一時的に無効化し、表示が戻るかを確認してください。調査が終わったら、デバッグ設定は元に戻します。

更新前の状態に戻して時間を稼ぐ方法

原因の特定に時間がかかり、すぐに表示を戻したい場合は、更新したテーマやプラグインを一つ前のバージョンに戻す方法があります。「WP Rollback」などのプラグインで、WordPress.orgで配布されているテーマ・プラグインの過去のバージョンへ戻せます(有料テーマなど配布元が異なるものは対象外です)。

ただし、古いバージョンにはセキュリティ修正が入っていない可能性があります。戻すのは原因を調べるまでの一時的な措置と考え、修正版が出たら更新し直してください。今後のために、本番で更新する前にステージング環境で表示を確かめる流れを作っておくと、同じトラブルを防ぎやすくなります。

まとめ

  • 最初にページのHTMLを確認し、「出力されていない」「見えないだけ」「途中で止まっている」の3系統に分ける
  • もっとも多いのは、ウィジェットエリアのID変更によりウィジェットが使用停止中に移動したケース
  • テーマのレイアウト設定のリセット、子テーマの古いテンプレート、ブロックテーマのカスタマイズ済みテンプレートも確認する
  • 見えないだけならCSSの衝突とキャッシュ、途中で止まるならデバッグログでPHPエラーを確認する
  • ロールバックは一時的な措置にとどめ、更新前のステージング確認を習慣にする

各手順の画面表記はWordPressやテーマのバージョンで変わります(2026年10月現在の一般的な構成で説明しています)。

お気軽にご相談ください

お見積りへ お問い合わせへ
▲