ブログ記事一覧で記事を選択すると、記事の内容が見れるはずですが、「このサイトで重大なエラーが発生しました。」と表示されました。
この原因を探して直す方法を紹介します。
エラー内容を表示される
「このサイトで重大なエラーが発生しました。」と表示されました。
何が原因か分からないので、「デバックモードの切替」を行います。
「デバックモードの切替」には、「SCP/SFTP/FTPS対応のFTPクライアント」ソフトが必要です。使用方法は以下を参考に行って下さい。
【WINSCP】ワードプレス(WordPress)サイト運営に必要な「SCP/SFTP/FTPS対応のFTPクライアント」のインストールと初期設定方法
【wp-config.php】ファイルを開き、最下部に以下の文章を使いして保存を行います。
/**
*WordPressのデバッグモード(false:エラー表示しない、true:エラー表示する)
*/
define('WP_DEBUG', true);
if (WP_DEBUG) {
ini_set('display_errors', 0); //エラーをブラウザに表示しない
define('WP_DEBUG_DISPLAY', false); //エラーをブラウザに表示しない
define('WP_DEBUG_LOG', true); //エラーをdebug.log に出力
}
エラーがズラっと表示されました。
エラー内容
Deprecated: Function create_function() is deprecated in /★-------------★/wp-content/themes/luxech/functions.php on line 291
Notice: Undefined variable: simple_ga_ranking in /★-------------★/wp-content/plugins/simple-ga-ranking/simple-ga-ranking.php on line 159
Fatal error: Uncaught Error: Call to a member function fetch() on null in /★-------------★/wp-content/plugins/simple-ga-ranking/simple-ga-ranking.php:159 Stack trace:
#0 /★-------------★/wp-content/plugins/simple-ga-ranking/simple-ga-ranking.php(302): sga_ranking_get_data(Array)
#1 /★-------------★/wp-content/plugins/simple-ga-ranking/simple-ga-ranking.php(341): sga_ranking_shortcode(Array)
#2 /★-------------★/wp-includes/class-wp-widget.php(380): WP_Widget_Simple_GA_Ranking->widget(Array, Array)
#3 /★-------------★/wp-includes/widgets.php(823): WP_Widget->display_callback(Array, Array)
#4 /★-------------★/wp-content/themes/luxeritas/inc/wpfunc.php(2440): dynamic_sidebar('side-h3')
#5 /★-------------★/wp-content/themes/luxeritas/functions.php(369): thk_widget_concat()
#6 /★-------------★/wp-includes/class-wp-hook.php(292): {c in /★-------------★/wp-content/plugins/simple-ga-ranking/simple-ga-ranking.php on line 159
原因を解析する
エラー表示を見ると「simple-ga-ranking.php
」が繰り返し表示されている事からが原因のようです。
「simple-ga-ranking
」は、ランキング表示プラグインです。
エラー内容1
Deprecated: Function create_function() is deprecated in
phpが何か悪さをしているようだ。
改善案の一つとして、PHPのバージョンが古い場合は新しいバージョンに設定し直す。
エラー内容2
Fatal error: Uncaught Error: ~~~~~/simple-ga-ranking.php on line 159
手動でphpファイルを修正する方法もありますが、プラグインを更新する前のバックアップがある場合はその状態に戻すと良いでしょう。
エラー内容3
Notice: Undefined variable: ~~~~~/simple-ga-ranking.php on line 159
【simple-ga-ranking.php】の変数が足りないようだ。
改善案の一つとして、【simple-ga-ranking.php】の最新版プラグインのアップロードによる修正を行う。
解決策
プラグインの更新を見ると、更新プラグイン一覧に【simple-ga-ranking.php】が表示されていたので、【simple-ga-ranking.php】の最新版プラグインのアップロードによる修正を行う。
- 「simple-ga-ranking.php」プラグインzipファイルをダウンロード
- 既存の「simple-ga-ranking.php」プラグインを削除
- 「プラグイン」⇒「新規追加」⇒「プラグインのアップロード」にてzipファイルをアップロードしてインストール
動作確認
最後にWordPressおよびWebサイトの動作確認を行います。
エラーが消えて問題が無ければ、【wp-config.php】ファイルを開き、
define('WP_DEBUG', true);
から
define('WP_DEBUG', false);
に変更してWordPressのデバッグモードをOFFに戻します。
【wp-config.php】ファイルを開き、最下部に以下の文章を変更して保存を行います。
/**
*WordPressのデバッグモード(false:エラー表示しない、true:エラー表示する)
*/
define('WP_DEBUG', false);
if (WP_DEBUG) {
ini_set('display_errors', 0); //エラーをブラウザに表示しない
define('WP_DEBUG_DISPLAY', false); //エラーをブラウザに表示しない
define('WP_DEBUG_LOG', true); //エラーをdebug.log に出力
}
これにて「サイトに重大なエラー」への対策が完了です。
コメント