【kaka様】WordPressでサイト上や管理画面でエラーが表示される場合のチェック項目・改善方法

kaka様より、エラー表示が出ているというご相談を頂きました。主にPHP エラー、警告、通知が表示されるため、そこに表示されているファイルに原因があります。

エラー箇所の判別の仕方や、エラーメッセージの見方について解説していきたいと思います。


WordpressのSEO対策ならRoot-013 Root-013ではWordPress・SEO対策・アフィリエイトなどサイト運営に関するご質問に無料でお答えしております。
WordPress 無料相談 アフィリエイト SEO 無料相談 無料!WPインストール代行・集客サポート

サイト上にエラーが表示される

ワードプレスの画面でも、ブログの画面でも上に英語のエラーが出ます。
英語の中にはこのブログを作る前の一つ目のドメイン名、今のドメイン名が含まれています。

何が原因なのかわかりません。

宜しくお願い致します。

エラー表示の見方

kakaさま
ご相談ありがとうございます!

エラー表示は不具合を教えてくれる大切な手掛かりです。意味が理解できなくても、とりあえず原因を探る事はできます。

パスを見よう

エラー表示は、多くの場合エラーが起こっている場所を表示してくれています。

英文が分からなくても ファイルのパス=サーバー内でエラーが起きている場所 を示しているので、まずは見てみましょう。

エラーのメッセージはこちらですね。(サイトを拝見しました)

Warning: count(): Parameter must be an array or an object that implements Countable in /home/【フォルダ名】/【ドメイン名】.com/public_html/wp-content/plugins/wordpress-ping-optimizer/cbnet-ping-optimizer.php on line 533

今回注目すべきはこの部分。

/home/【フォルダ名】/【ドメイン名】.com/public_html/wp-content/plugins/wordpress-ping-optimizer/cbnet-ping-optimizer.php on line 533

この部分はレンタルサーバーのディレクトリ(フォルダ)階層を指しています。

【フォルダ名】・・・ここがkaka様が仰っている「このブログを作る前の一つ目のドメイン名」でしょうか。
【ドメイン名】.com・・・ここが今運営されているサイト「今のドメイン名」となっているようですね。

さて、【フォルダ名】=【shi*******u】はレンタルサーバーの契約時に作成した初期ドメインや、ユーザー名ということが多いです。

/home/【フォルダ名】/【ドメイン名】.com/ のドメイン名部分は、サーバーにドメインを登録した時にドメイン名と同じフォルダが作られることが多いです。

/public_html/ は、実際にWeb上に公開されるフォルダを指すことがあります。

/wp-content/ 以降は、インストールしたWordPress内のディレクトリ(フォルダ)階層を示しています。

/wp-content/plugins/ は、wp-contenフォルダの中のpluginsフォルダを示しています。そして、pluginsフォルダには、インストールしたプラグインのファイル群が格納されていきます。

よって、プログラムに詳しくなく、英文の意味がわからなくても、「wordpress ping optimizer プラグインの中の cbnet-ping-optimizer.php ファイルの 533行目でエラーが起こっているんだな・・・」と知る事ができます。

なので自分であれば、とりあえずPingOptimizerを停止してみます。(ご心配ならバックアップなどを取ってから行うようにしましょう)

サーバーのファイルマネージャーや、FTP系のソフトで、フォルダの階層を確認してみましょう。

以下は、僕が利用しているサーバーのWordPress階層です。(ソフトはWinSCP)

フォルダ階層

website-homepage.comというフォルダは、サーバーにドメインを登録した際に自動的に作られます。(任意に決定・変更のできるサーバーもあります)
僕の場合は/wp/というフォルダを作成し、その中にWordPressをインストールしていますが、kakaさんの場合はこのフォルダはありませんね。

wp-contentの中には、pluginsの他にもテーマフォルダ(themes)や画像などのメディア(uploads)もあります。ぜひチェックしてみてください。/wp-content/以降の構成はどんなWordPressも共通です。

エラーが出た原因

エラーになる原因は様々ですが、考えられるのは
1.プラグインとWordPressのバージョンが合わない
2.プラグインとPHPのバージョンが合わない
などでしょうか。

1.プラグインとWordPressのバージョンが合わない
WordPressもしくはプラグインのアップデートでこのようなことが起こった場合は、互換性がないことを示しています。
「Warning」は文字通り警告なので、処理が停止されるようなものではありませんが、現在お使いのWordPressやPHPで推奨されていない処理を行っていることを指しています。

2.プラグインとPHPのバージョンが合わない
最近はレンタルサーバー側でPHP7.0~7.2が主流になってきていますが、初期設定は5.Xだったりします。

サーバー側のPHPバージョンが古いまま新しいWordPressやプラグインを使っていたり、逆にWordPress側が古いのに新しいPHP7.Xを使っていたりすると、エラーが表示されるかもしれません。

WordPressバージョン、プラグインバージョン、サーバーのPHPバージョンなども確認してみましょう。(PHPバージョンの確認方法はサーバーによって違います)

WordPress デバッグモード

さて、エラーメッセージは表示・非表示を切り替えることもできます。
もし意図せずに表示する設定にしている場合は修正しても良いでしょう。(エラーを修正した上で行うのが望ましいですが)

WordPressにはデバッグモードというのがあります。
WordPress Codex デバッグモード

wp-config.php (kakaさんの場合 /home/【フォルダ名】/【ドメイン名】.com/public_html/ インストールした一番上の階層public_htmlフォルダ内にあります)には

define( 'WP_DEBUG', false );

という記述がありますが、もし

define( 'WP_DEBUG', true );

に変更されていようであればfalseに戻しましょう。falseでもエラーが出ることはあると思いますが、一応チェックしてみてください。

まとめ

僕もPHPにそれほど詳しいわけではありません(笑)
でも、フォルダの階層は表示されるので、エラーが起きているプラグインやその場所などは知る事ができます。

今回はプラグインでしたが、デバッグを有効にしていればテーマをカスタマイズする際も便利ですよ。
/wp-content/themes/index.php on line XXXXなんて表示が出たら、index.phpに問題があるという事ですからね。

以上、参考にしていただければ幸いです。

おすすめコンテンツ

コメントを残す

メールアドレスが公開されることはありません。

コメントの前にご確認ください。

  • コメントは承認制のため、反映・表示までお時間を頂きます。
  • メールアドレス等の入力も必須ではありませんので入力の必要はありません。お気軽にどうぞ。(冷やかしは止めてね!)
  • コメントや返信があっても通知は届きませんのでご注意下さい。
  • 忙しい時はレスが遅れることもあります。
  • 当ページによる一切の不利益および損害に関し、責任を取ることはできません。