WordPressのWebサイトの表示が崩れた!原因の徹底究明と直し方ガイド

SOSブログ

はじめに:焦らずに「原因の切り分け」から始めましょう

Webサイトの運営において、「画面が真っ白になった」「レイアウトがぐちゃぐちゃになった」「画像が表示されない」といったトラブルは、どんなに経験豊富な管理者でも一度は直面するものです。

特にWordPressは、世界中で最も使われているシステムですが、その自由度の高さゆえに、ちょっとしたきっかけで表示崩れが起きやすいのも事実です。

WordPressは、PHPというプログラム、データベース、そしてHTMLやCSSといったデザイン言語が複雑に連携して動いています。そのため、崩れの原因は一つではありません。「何をした直後に崩れたか?」「どの部分が崩れているか?」を落ち着いて観察することが解決への第一歩です。

この記事では、よくある原因を発生頻度が高い順に並べ、それぞれの原因と解決策(対策)を詳しく解説していきます。初心者の方でも安心して対処できるよう、専門用語もわかりやすく説明しながら進めていきます。

第1章:まずはここから!「キャッシュ」の問題を疑う

表示崩れが起きたとき、真っ先に疑うべきなのは、実はシステムのエラーではなく「キャッシュ」のいたずらです。これは最も頻繁に起こる原因であり、かつ最も簡単に直せる問題でもあります 1

1.ブラウザのキャッシュが古い情報を表示している

私たちが普段使っているブラウザ(ChromeやSafariなど)は、Webサイトの表示を速くするために、一度読み込んだ画像やCSS(デザインの指示書)をパソコンやスマホの中に一時保存します。これを「ブラウザキャッシュ」と呼びます。

あなたがサイトのデザインを修正しても、ブラウザが「手元にある古いデータ(キャッシュ)」を優先して使ってしまうと、新しい指示と古いデータが混ざってしまい、レイアウトが崩れて見えることがあります。

【対策】スーパーリロード(強制再読み込み)を試す

通常の「更新ボタン」ではなく、キャッシュを無視して最新のデータを強制的に読み込む「スーパーリロード」を試してください。これだけで直ることが多々あります。

OSの種類ブラウザショートカットキー
WindowsGoogle ChromeCtrl + F5 または Shift + F5
Microsoft EdgeCtrl + F5
FirefoxCtrl + F5 または Ctrl + Shift + R
MacGoogle ChromeCommand + Shift + R
SafariOption + Command + E (キャッシュを空にする)
FirefoxCommand + Shift + R

2.サーバーやプラグインのキャッシュが残っている

ブラウザのキャッシュをクリアしても直らない場合は、Webサイト側(サーバー側)に残っているキャッシュが原因かもしれません。

WordPressを高速化するために、以下のようなものを利用していませんか?

  • キャッシュ系プラグイン
    「WP Super Cache」「W3 Total Cache」「WP Rocket」「Autoptimize」など
  • レンタルサーバーの高速化機能
    Xserverの「Xアクセラレータ」やConoHa WINGのキャッシュ機能など
  • CDN(コンテンツデリバリネットワーク)
    Cloudflareなど

これらは、ページを「静的なHTMLファイル」として保存して高速表示させる仕組みですが、デザイン変更直後は古い状態のまま保存されていることがあります。

【対策】キャッシュの削除(パージ)を行う

各プラグインの設定画面や、レンタルサーバーの管理画面にある「キャッシュクリア(Clear Cache / Purge All)」ボタンを押して、サーバー側のデータを最新の状態に更新しましょう。

第2章:アップデートによる不具合(WordPress本体・テーマ・プラグイン)

キャッシュの問題ではない場合、次に多い原因は「アップデート」です。

WordPress本体、テーマ、プラグインのいずれかを更新した直後に表示が崩れたなら、バージョン間の「相性問題」が起きている可能性が高いです。

1.プラグイン同士の競合やテーマとの相性

WordPressは、世界中の別々の開発者が作ったパーツ(テーマやプラグイン)を組み合わせて動かしています。

そのため、あるプラグインを更新したら、テーマと喧嘩してしまったり、別のプラグインの邪魔をしてしまったりすることがあります。これを「競合(コンフリクト)」と呼びます。

特に以下の機能を持つプラグインは、表示崩れの原因になりやすい傾向があります。

  • 高速化・圧縮プラグイン
    「Autoptimize」などでCSSやJavaScriptを圧縮(Minify)したり結合したりする設定にしていると、コードの読み込み順序がおかしくなり、デザインが崩れることがあります。
  • 画像遅延読み込み(Lazy Load)
    画像の表示タイミングを遅らせる機能がうまく動かず、画像の高さがゼロになってレイアウトがガタガタすることがあります。
  • ページビルダー
    ElementorやDiviなどの独自のデザイン機能を持つプラグインは、テーマのCSSとぶつかりやすいです。

【対策】プラグインを特定して停止する

一度すべてのプラグインを「無効化」してみてください。それで表示が直るなら、原因はプラグインです。その後、一つずつ有効化していき、再度崩れた瞬間に有効化したプラグインが「犯人」です。

2.PHPバージョンの不一致

WordPressを動かしているサーバーのプログラム言語「PHP」のバージョンも重要です。たとえば、サーバーのPHPバージョンを最新(PHP 8.xなど)に上げた際、使っているテーマやプラグインが古すぎて対応しておらず、エラーが出て画面が真っ白になることがあります。

【対策】バージョンを戻す(ロールバック)

もし特定のプラグインが原因だとわかったけれど、どうしてもその機能が必要な場合は、「WP Rollback」というプラグインを使って、問題が起きなかった一つ前のバージョンに戻すことができます。

第3章:追加CSSの記述ミス(たった1文字のミスで崩壊)

WordPressの「外観」→「カスタマイズ」→「追加CSS」は、手軽にデザインを調整できる便利な機能ですが、ここでの記述ミスも非常によくある原因です。

CSSはとても繊細で、たった1文字の間違いでそれ以降の記述がすべて無視されてしまうことがあります。

1.よくある記述ミスのパターン

1.閉じ括弧 } の忘れ

これが最も多いミスです。

CSS

/* 間違いの例 */
.title {
    font-size: 20px;
    color: red;
/* ここに } がない! */

.footer {
    background: black;
}

上の例では、.title の閉じ括弧がないため、下の .footer の設定まで巻き添えになって読み込まれなくなります。これにより、フッターのデザインまで崩れてしまいます。

2.セミコロン ; の忘れ

各行の最後には必ず ; が必要です。これを忘れると、次の行の命令とうまく区切られず、エラーになります。

3.全角文字の混入

CSSは基本的に「半角英数字」で書くルールです。スペース(空白)が「全角スペース」になっていたり、コロン : が全角になっていたりすると、正しく認識されません。

2.スマホだけで崩れる?(レスポンシブの記述ミス)

「パソコンでは綺麗なのに、スマホで見ると崩れる」という場合、メディアクエリ(@media)の記述ミスが疑われます。

@media (max-width: 768px) {… } という記述の中に、さらに通常のCSSの括弧 {… } が入る「入れ子構造」になるため、括弧の数や位置を間違えやすいのです。

【対策】コードエディタでチェック

目視で探すのは大変です。エラー箇所を赤く表示してくれる高機能なテキストエディタ(VS Codeなど)にコピペして確認するか、記述を一度すべて削除して(バックアップをとってから)、少しずつ戻してどこで崩れるか確認しましょう。

第4章:テーマファイルエディターでの編集ミス(画面が真っ白に!)

管理画面の「テーマファイルエディター」を使って、functions.php という重要なファイルを直接編集していませんか? これは最もリスクが高い操作です。

1.なぜ functions.php のミスは致命的なのか

CSSのミスなら「デザインが崩れる」だけで済みますが、functions.php はPHPというプログラムそのものです。

PHPはルールに非常に厳格で、全角スペースが一つ入ったり、カンマが抜けたりするだけで「致命的なエラー(Fatal Error)」と判断し、サイトの表示をすべてストップさせます。

これが「画面が真っ白(White Screen of Death)」の正体です。

2.真っ白になった時の復旧方法(FTP)

画面が真っ白になると、WordPressの管理画面にも入れなくなるため、ブラウザからは直せません。以下の手順で「FTP(ファイル転送)」を使ってサーバーに直接アクセスする必要があります。

  • FTPソフトを用意する
    FileZillaやWinSCPなどのソフトを使い、サーバーに接続します。
  • ファイルを探す
    /wp-content/themes/使っているテーマ名/ の中にある functions.php を探します。
  • ダウンロードして修正
    ファイルを自分のパソコンにダウンロードし、メモ帳ではなく専用のエディタで開いて、追記したコードを削除・修正します。
  • アップロード
    修正したファイルをサーバーに上書き保存します。

【教訓】

本番環境の管理画面で functions.php をいじるのはやめましょう。必ずFTPを使うか、万が一のためにファイルのバックアップを取ってから行いましょう。


第5章:ブロックエディタ(Gutenberg)特有のエラー

記事の編集画面を開いたときに、「このブロックには想定されていないか無効なコンテンツが含まれています」というエラーが表示されることがあります。これは従来のクラシックエディタにはなかった、ブロックエディタ特有の現象です。

1.原因と解決策

これは、以前記事を書いたときのブロックの仕様と、現在のブロックの仕様(HTML構造)が食い違ってしまったときに起こります。プラグインの更新などでブロックの定義が変わると発生します。

【対策】

  • ブロックのリカバリーを試行
    このボタンを押すと、WordPressが自動的に新しい形式に合わせて修復を試みます。多くの場合、これで直ります。
  • HTMLへ変換
    リカバリーがうまくいかない場合は「HTMLへ変換」を選びます。ブロックとしての編集機能は失われますが、中身の文章やコードは「カスタムHTML」として残るため、表示自体は守られます。

※Elementorなどのページビルダーを使っている場合は、Elementorのツール設定から「CSSの再生成(Regenerate CSS)」を行うことで、レイアウト崩れが直ることがよくあります。

第6章:SSL化と「保護されていない通信」による崩れ

Webサイトを http から https(SSL化)に変更した際、正しく設定できていないと表示が崩れることがあります。これを「混合コンテンツ(Mixed Content)」の問題と呼びます。

1.混合コンテンツとは?

サイトのURLは https になっているのに、そのページの中で読み込んでいる画像やCSSファイルのリンク先が http のままになっている状態です。最近のブラウザはセキュリティが厳しいため、安全でない http の読み込みをブロックしてしまいます。

CSSファイルがブロックされると、デザインが適用されず、文字だけの質素なページが表示されてしまいます。

【対策】内部リンクを全てHTTPSに書き換える

  • プラグインで修正
    「Really Simple SSL」というプラグインを入れると、自動的に内部のリンクを https に書き換えてくれます。
  • データベース置換
    「Better Search Replace」「Search Regex」などのプラグインを使い、データベース内の http://あなたのドメインhttps://あなたのドメイン に一括置換するのが最も根本的な解決策です。

第7章:原因がわからない時の「切り分け」テクニック

ここまで紹介した原因に当てはまらない場合は、プロも使う「切り分け」の手法を試してみましょう。

1.「サイトヘルス」と「トラブルシューティングモード」

WordPress公式の「Health Check & Troubleshooting」というプラグインを使うと、「トラブルシューティングモード」が利用できます。

これのすごいところは、「一般の訪問者には正常なサイトを見せたまま、管理者であるあなたにだけ『すべてのプラグインをオフ、テーマを初期状態』にした画面を見せてくれる」という点です。稼働中のサイトでも、安全に「どのプラグインが犯人か?」をテストすることができます。

2.デバッグモードをオンにする

wp-config.php という設定ファイルに以下の記述を追加すると、画面上には見えないエラーの原因(ログ)をファイルに書き出してくれます。

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

これを設定すると、 /wp-content/ フォルダの中に debug.log というファイルが生成され、「どのファイルの何行目でエラーが起きているか」が具体的に記録されます。これがわかれば、修正すべき場所が一目瞭然です。

まとめ:備えあれば憂いなし

WordPressの表示崩れは、そのほとんどが「手順のミス」「記述ミス」「キャッシュ」といった、人間が管理できる原因によるものです。

最後に、今後表示崩れでパニックにならないための「鉄則」をまとめておきます。

  • バックアップは命綱
    更新前には必ずバックアップを取りましょう。
  • 本番で直接いじらない
    重要な変更は、テスト環境やローカル環境で行いましょう。
  • キャッシュクリアを癖にする
    デザインを変えたら、まずスーパーリロードです。
  • 子テーマを使う
    テーマをカスタマイズする時は、親テーマを直接編集せず「子テーマ」を使いましょう。

これらのポイントを押さえておけば、もし崩れてしまっても落ち着いて復旧できるはずです。一つひとつ原因を確認して、正常なサイトを取り戻しましょう!