あけましておめでとうございます!
野球好きのためのフォーラムサイトgeek894.com管理人の894です。
新年早々ではありますが、先日、サイトの編集中にWordPressの管理画面が真っ白になってしまいました…。
今後の備忘録と、同じような状況に陥ってしまった方のために、この時の私の対処を簡単に解説してみようと思います。
症状
functions.phpを編集し、更新したところ管理画面が真っ白になってしまいました。
私の場合はサイト自体は表示されていましたが、WordPressの管理画面にアクセスしても画面が真っ白なため一切の編集作業ができなくなってしまいました。
トラブルの原因を解明する
WordPressの管理画面にログインできなくなってしまうと、修復を諦めてしまう人がいるかもしれません。
しかし、慌てずにエラーの原因を探っていきましょう。
FTPソフトから「wp-config.php」を開く
エラー内容を表示するためには、wp-config.php内の記述を変更する必要があります。
と言ってもたったの一箇所だけです。
define(‘WP_DEBUG’, false);
という記述をdefine(‘WP_DEBUG’, true);
に書き換えるだけです。
また、この記述がない場合はrequire_once(ABSPATH . ‘wp-settings.php’);
よりも上に書き加えてください。
書き換えたら、ファイルを上書き保存して管理画面にアクセスしてみてください。
エラー内容が表示されるようになっているはずです。
代表的なエラーメッセージ
Parse error: syntax error, unexpected …構文エラー。つまりPHPとしての文法が誤っていて、PHPがただしく理解できないという意味です。例としては、ifやforeachの入れ子が、括弧の括り、クオートの括りが合っていないと言った場合です。
Fatal error: Call to undefined function …未定義の関数が呼ばれたというエラーです。関数が記述されているべきファイルが読み込まれていなかったり、ファイルが破損していた場合に発生しがちです。
Fatal error: Cannot redeclare …定義済みの関数を再度定義しようとした場合に発生するエラーです。プラグイン同士が同じ関数名を利用しようとした場合などに発生します。
Warning: Cannot modify header information …通常、Warning:で始まるエラーの場合は、そのまま処理が続行されますが、リダイレクトを行うような場合(管理画面へのログイン処理時など)には、すでにヘッダーの送信(htmlのheadとは違います)が行われてしまった後であるため、リダイレクトが行われずに真っ白になるケースがあります。
引用:「WordPressで画面が真っ白になったら、最初にやるべきこと」-Simple Colors
私の場合は「Warning: Cannot modify header information 」が表示されていました。
最終的な対応
最終的には、このエラーメッセージの後ろに、問題のあるファイル名が表示されていたので、直前にバックアップしていたファイルと入れ替えたところ、無事復旧することができました!
エラー内容によって取るべき対応が異なると思いますが、殆どの場合でエラーが出る直前に編集していたファイル内にエラーが起こることが多いようです。
なにはともあれ、無事に復旧できて安心しました。
以後気をつけます…。