「サイトに重大なエラーがありました」の回避方法
WordPressを運用していると上記のように「サイトに重大なエラーがありました」と表示がでるときがあります。
以前はこの表示はなかったように感じますが、どこかのバージョンからこの「サイトに重大なエラーがありました」の表示に切り替わったようです。
私がこの表示を見たのは「PHPエラー」が生じたときに出ました。
そのときにはPHPの構文エラーを修正したら正常な画面に戻りました。
WordPressにはデバックモード(WP_DEBUG)がありますので、
「サイトに重大なエラーがありました」の表示に変わり原因がわからない場合にはデバックモードへ切り替えましょう。
Debugging in WordPress | WordPress.org
デバックモードの切替方法
wp-configのdefine( ‘WP_DEBUG’, true );
デバックモードの切替方法はwp-config.php に
define( 'WP_DEBUG', true );
を追記して上書き保存します。
WP_DEBUG
の記述は
wp-config.php の78行目あたりにあります。
/**
* 開発者へ: WordPress デバッグモード
*
* この値を true にすると、開発中に注意 (notice) を表示します。
* テーマおよびプラグインの開発者には、その開発環境においてこの WP_DEBUG を使用することを強く推奨します。
*
* その他のデバッグに利用できる定数については Codex をご覧ください。
*
* @link http://wpdocs.osdn.jp/WordPress%E3%81%A7%E3%81%AE%E3%83%87%E3%83%90%E3%83%83%E3%82%B0
*/
define(‘WP_DEBUG’, false);
define(‘WP_DEBUG’, false);
↓
define(‘WP_DEBUG’, true);
へ書き換えます。
そもそも記述がない古いWordpressを利用している場合にはWp-config.phpへ直書きするとデバックモードになります。
WP_DEBUG_LOG
エラーが生じた際、define('WP_DEBUG_LOG', true);
を書き足すことでデバックログが/wp-content/の中へ書き出されます。
PHPエラーのときチェックすること
どのファイルを編集してエラーになっているのかをチェックすることが大事です。
single.phpが原因の場合、single.phpを読み込んでいないページはエラー表示にならないわけですから
single.phpが原因だとわかります。
よくあるエラーとしては
・PHP if文のカッコ忘れ
・PHP 文末のセミコロン忘れ
です。
PHPエラーが表示されないときにはサーバーにあるphp.iniの中の
「display_errors = ON」にすることでphpエラーを確認できます。
PHPコードの構文チェックのような構文チェックツールがあるので
使ってみるのも良いと思います。
テキストエディタに履歴が残っていればコントロール+Zで巻き戻しできるんですけどね。
WordPressのPHPファイルを編集する際は、念の為必ずバックアップをとっておきましょう。
コメント
コメント一覧 (1件)
[…] 参考:「サイトに重大なエラーがありました」の回避方法 […]