楽天 ポイント最大47.5倍!セール会場へ

WordPress・PHPバージョンアップでサイトが壊れたときの対処

PHPバージョンアップ|WordPress・PHPバージョンアップでサイトが壊れたときの対処

WordPressの更新ボタンを押したら、サイトが真っ白になった。あるいはサーバー会社からPHPのバージョンアップを促され、実行したらレイアウトが崩れた——よくある事故です。

この経験があると、「もう更新しないでおこう」と考えがちです。しかし更新を止めることは、改ざんリスクを引き受けることと同義です。正しい手順を知れば、事故は防げます。

この記事で分かること

  • 真っ白な画面が出たときの、その場での対処
  • 管理画面にすら入れないときの復旧方法
  • PHPバージョンアップで壊れる典型パターン
  • 事故を起こさない更新手順
目次

まず落ち着いて|壊れ方は3種類

症状原因として多いもの深刻度
真っ白な画面(何も表示されない)PHPの致命的エラー。プラグインやテーマの非互換
レイアウト崩れ(内容は出る)CSSの読み込み失敗、テーマ側の仕様変更
一部機能が動かない特定プラグインの非互換

データが消えたわけではありません。記事も画像もデータベースに残っています。表示させる仕組みが止まっているだけなので、ほとんどの場合は復旧できます。

真っ白な画面が出たときの対処

STEP1|管理画面に入れるか確認する

https://ドメイン/wp-admin/ にアクセスしてみてください。

  • 入れる場合:直前に更新したプラグインを無効化すれば、多くは解決します
  • 入れない場合:STEP2へ

STEP2|FTPでプラグインを止める

管理画面に入れなくても、ファイル操作でプラグインを無効化できます。

FTPソフトかサーバーのファイルマネージャーで /wp-content/plugins/ を開き、フォルダ名を変更するだけです。

/wp-content/plugins/  →  /wp-content/plugins-off/

これで全プラグインが読み込まれなくなります。サイトが表示されたら、原因はプラグインです。フォルダ名を戻したうえで、プラグインを1つずつ有効化して、どれが原因かを特定します。

※この操作でプラグインの設定が消えることはありません。

STEP3|テーマを疑う

プラグインを全部止めても直らない場合、テーマが原因の可能性があります。同様に /wp-content/themes/ の中で、使用中のテーマのフォルダ名を変更してください。

WordPressは標準テーマに自動で切り替わります。デザインは崩れますが、サイトは表示されるようになります。これで原因の切り分けができます。

STEP4|エラー内容を表示させる

原因を特定したいときは、エラーを画面に出す設定にします。wp-config.php の該当箇所を変更してください。

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

これで /wp-content/debug.log にエラーが記録されます。ファイル名と行番号が分かるので、原因の特定が一気に進みます。

調査が終わったら必ず false に戻してください。エラー内容を訪問者に見せるのは、セキュリティ上望ましくありません。

PHPバージョンアップで起きること

サーバー会社から「古いPHPのサポートが終了します」という案内が来て、バージョンを上げたら壊れた——というケースです。

壊れる原因内容
古いプラグインが対応していない数年間更新されていないプラグインは、新しいPHPで動かない
テーマの独自コードが古い書き方特にオリジナルテーマや、制作会社の独自カスタマイズ
functions.phpへの追記過去に追加したコードが非推奨の書き方になっている
開発が終了したプラグイン配布終了しているものは、対応版が出ない

PHPのバージョンは、サーバー管理画面から元に戻せます。壊れたらまず戻してください。そのうえで、対応できない原因を特定し、順に解決してから再挑戦します。

ただし戻したまま放置してはいけません。サポートが終了したPHPは、脆弱性が見つかっても修正されません。改ざんの温床になります。

事故を起こさない更新手順

STEP作業
1バックアップを取る(ファイル+データベース)
2更新内容を確認する(大型アップデートか、修正のみか)
3可能ならテスト環境で先に試す
4本番で更新する(1つずつ、まとめて押さない)
5各更新後に、トップと主要ページの表示を確認
6フォーム送信をテストする
7問題があれば、直前の更新を戻す

4が重要です。「すべて更新」ボタンで10個まとめて更新すると、どれが原因か分からなくなります。面倒でも1つずつ進めてください。

テスト環境(ステージング)を用意する

本番と同じ構成の複製環境で、先に更新を試す方法です。多くのレンタルサーバーが標準機能として提供しています。

ECサイトや会員機能があるサイト、業務に直結するサイトでは必須と考えてください。数百万円かけて作ったサイトを、確認なしの更新で止めるのは割に合いません。

自動更新はどう設定すべきか

対象推奨設定理由
WordPress本体(マイナー更新)自動セキュリティ修正が中心。互換性の問題は起きにくい
WordPress本体(メジャー更新)手動大きな変更を含む。確認してから
プラグイン手動(重要なものは自動)非互換が起きやすい
テーマ手動カスタマイズしている場合は特に注意

手動にする場合は、「月に1回、更新の日を決める」という運用にしてください。放置されるのが最も危険です。

更新を止めるという選択について

「一度壊れたので、もう更新しない」——気持ちは分かりますが、これは最も危険な選択です。

WordPressの更新には、機能追加だけでなく脆弱性の修正が含まれます。更新を止めるということは、公開されている脆弱性を放置することを意味します。

改ざんされた場合の復旧費用は15万〜50万円、それに加えて信用の毀損と機会損失が生じます。詳しくはWordPressが改ざんされたときの初動対応をご覧ください。

更新が怖いなら、止めるのではなく、安全に更新できる体制を作ってください。バックアップとテスト環境、この2つがあれば恐れる必要はありません。

よくある質問

Q. 更新したら、記事が全部消えたように見えます

ほぼ確実に消えていません。データベースに残っており、表示側の問題である場合がほとんどです。慌ててバックアップから戻す前に、プラグインとテーマの切り分けを行ってください。

Q. 原因のプラグインが特定できました。どうすればよいですか?

3つの選択肢があります。①開発元の対応を待つ ②代替プラグインに乗り換える ③その機能を諦める。長期間更新されていないプラグインの場合、待っても対応版は出ません。乗り換えを検討してください。

Q. カスタマイズ部分が更新で消えました

テーマ本体のファイルを直接編集していた場合、テーマ更新で上書きされます。これを防ぐのが「子テーマ」の仕組みです。カスタマイズは必ず子テーマ側に置いてください。すでに消えている場合は、バックアップから該当箇所を取り出します。

Q. どのくらいの頻度で更新すべきですか?

セキュリティ修正はできるだけ早く、それ以外は月1回を目安にしてください。重大な脆弱性が公表された場合は、即日対応が必要になることもあります。

Q. 自分で対応する自信がありません

保守契約を検討してください。月5,000〜3万円程度で、更新作業と不具合対応を任せられます。契約時に「更新後に表示が崩れた場合の修正が含まれるか」を必ず確認してください。ここが範囲外の契約は少なくありません。

まとめ

  • 真っ白でもデータは消えていない。表示の仕組みが止まっているだけ
  • 管理画面に入れなければ、FTPでpluginsフォルダ名を変更して切り分ける
  • PHPのバージョンはサーバー管理画面から戻せる。ただし放置しない
  • 更新はバックアップ→1つずつ→都度確認。まとめて押さない
  • カスタマイズは子テーマに置く。本体を直接編集しない
  • 更新を止めるのは最も危険な選択。安全に更新できる体制を作る

更新事故の多くは、バックアップと手順で防げます。怖いのは更新そのものではなく、備えのない更新です。

CONTACT

お問い合わせ

成果を出すホームページ制作は私たちにおまかせください。
まずはお気軽にご相談を!

目次