CocoonフォーラムでWordPressのトラブルシューティング向けの良いプラグインを教えていただきました。
それは、「Health Check & Troubleshooting」というプラグインです。
このプラグインのトラブルシューティング機能が非常に「WordPress上でのトラブルシューティング」を楽にしてくれる便利ツールだったので紹介。
目次
Health Check & Troubleshootingとは
Health Check & Troubleshootingの主な機能はこちら。
- WordPressサイトの健康チェック
- トラブルシューティング機能
- WordPressの環境情報表示
- 各種チェックツール(ファイルの適合性・メールチェックなど)
このようにいくつか機能はあるのですが、今回は「トラブルシューティング機能」のみについて説明します。
この機能により、「クリック操作でトラブルの原因を手軽に探る」なんてことが出来るようになります。
WordPressのトラブル原因で一番多いのはプラグイン
僕はCocoonフォーラムでWordPressのトラブルに関する質問をよく受けます。
その際、「初心者の方がWordPressを使った際のトラブルの原因」として一番多いものがプラグインだったりします。
それで、「起きているトラブルの原因がプラグインかどうか」の切り分けを行うために、「利用している全てのプラグインの停止」を試してもらうことがあります。
ただこれ、言うは易しなんですが、実行するのが結構面倒だったりします。
というのも
プラグインを全部停止にするのは面倒くさい…
プラグインを停止したら再設定が必要なものもあるかも…
プラグイン停止中に公開ページの見た目や動作がかわってしまうじゃん…
上記のようなことを想像してしまって、心理的にも結構負担です。
けれど、今回紹介する「トラブルシューティング機能」を利用すれば、クリック一発で「全プラグインを無効状態」にできます。
しかも、適用されるのは「ログインしている管理者のみ」なので、公開ページに影響はありません。
テーマのトラブルにも対応
WordPressトラブルで、プラグインの次(もしくは同程度)に多いのが「テーマ特有の不具合」だったり、「テーマのカスタマイズ」だったりします。
Health Check & Troubleshootingプラグインは、ワンクリックでテーマをWordPress公式テーマに切り替えてくれます。
これにより「テーマ自体もしくは、テーマカスタマイズに原因があるかどうか」の切り分けも簡単に出来るようになっています。
テーマに原因があるかどうかを確認するのに、テーマを変更するにしても、
トラブルシューティング中、公開ページに別のテーマが出てしまって表示が崩れちゃうじゃん…
なんてことも、このプラグインなら防げます。
トラブルシューティングを行う方法
Health Check & Troubleshootingでトラブルシューティングを行うには、まずプラグインのインストールが必要です。
プラグインのインストール
WordPressダッシュボードのメニューから「プラグイン」→「新規追加」を選択してください。
「プラグインの追加」画面で「Health Check & Troubleshooting」と入力し出てきたプラグインをインストールし有効化します。
トラブルシューティング画面に移動
プラグインを有効化したら、メニューから「ツール」→「サイトヘルス」を選択します。
サイトヘルスメニューから「トラブルシューティング」を選択します。
トラブルシューティング
「トラブルシューティングモード」画面になるので「トラブルシューティングモードを有効化」ボタンを押してください。
このワンクリックで、サイトが以下のような状態になります。
- 管理者にのみ全プラグインが停止状態になる
- 管理者にのみテーマがデフォルトの公式テーマになる
トラブルシューティングモードで「管理者」がサイトの公開ページを見ると、以下のようにWordPressデフォルトテーマが適用された状態になります。
「管理者ではない通常の訪問者」がサイトに訪れた場合は、普段使用しているテーマが表示されています。
この仕様はかなりありがたい。
詳しくは、プラグインの説明が非常にわかりやすかったので転載しておきます。
トラブルシューティングモード
サイトのトラブルシューティングをする際、すべてのプラグインを無効化しデフォルトテーマに戻すよう伝えられることがあると思います。 ですがそれはサイト閲覧者の操作性を損なうことになり、そうしたくはありませんよね。
トラブルシューティングモードを有効にすると、すべてのプラグインが無効化され、あなたに対してのみサイトがデフォルトテーマに切り替わります。 他のすべてのユーザーにはいつものようにサイトが表示されます。
管理バーにトラブルシューティングモードが追加されました。それを使用することで個別にプラグインを有効化したり、使用中のテーマに戻ったり、トラブルシューティングから抜け出すことができます。
トラブルシューティング中は、ダッシュボードには、「トラブルシューティングモード – 有効」と表示されます。
こちらもプラグインの説明が分かりやすいので転載。
サイトは現在トラブルシューティングモードになっています。これはサイトの訪問者には影響なく、通常どおりサイトを表示し続けますが、あなたにとっては WordPress をインストールした直後のように見えます。
ここで個々のプラグインやテーマを有効化し、サイト上で問題のある動作が発生しているかを探すことができます。トラブルシューティングモードを無効化にしても、設定の変更は維持されます。
この「トラブルシューティングモード」を利用することにより、起きているトラブルの原因から、「プラグイン」と「テーマ」が排除された状態になります。
この「トラブルシューティングモード」でもまだ、トラブルが出現しているのであれば、原因は以下のようなものにある可能性が高くなります。
- WordPress自体の不具合
- 本文中に書いてある記事の内容(本文中に書いたコード含む)の不具合
「トラブルシューティングモード」に切り替えただけの状態で、トラブルが解消された場合は、他に原因があります。
その際は、次の段階の「不具合の特定」に移ります。
テーマ(親テーマ)に不具合があるかどうかの確認
まずは親テーマに不具合の原因があるかどうかの確認をしましょう。
確認をするには管理バーメニューの「トラブルシューティングモード」から「テーマ」→「切り替え [テーマ名]」を選択してください。
これで、使用テーマの「親テーマのみ」が有効化された状態になります。
この状態でトラブルが再現される場合は、原因は以下である可能性が高いです。
- 親テーマ自体の不具合
- 親テーマを直接カスタマイズしている場合はその不具合
ここまでの状態で、トラブルが再現されない場合は、次に「子テーマ」の動作を確認します。
子テーマ(テーマカスタマイズ)に不具合があるかどうかの確認
子テーマでのPHP(functions.php等)、CSS(style.css等)のカスタマイズに不具合があるかどうかを確認するには、管理メニューの「トラブルシューティングモード」から「テーマ」→「切り替え [子テーマ名]」を選択します。
これでトラブルが再現される場合は、以下のどちらかに原因がある可能性が高くなります。
- 子テーマ自体の不具合
- 子テーマにしたカスタマイズの不具合
これでもトラブルが再現されない場合は、プラグインに原因がある可能性が高いです。
個別プラグインのトラブルシューティングに移ります。
不具合のあるプラグインの特定
不具合があるプラグインを調べるには、管理バーのメニュー「トラブルシューティングモード」→「プラグイン」を怪しいものから1つずつ「有効化」していきます。
1つプラグインを有効化する毎にサイトの状態も確認してみてください。
プラグインを有効化した際に「トラブルが再現されるプラグイン」が不具合の原因の可能性が高いです。
トラブルシューティングモードを戻して通常モードにする
このようにして、原因を特定しトラブルを解決したら「通常モード」に戻します。
戻し方は、ダッシュボード画面で「トラブルシューティングモードを無効化」ボタンを押します。
このようにワンクリックでトラブルシューティングモードを終了させることができます。
かなり手軽。
まとめ
今回紹介した「Health Check & Troubleshooting」を利用することで、トラブルの原因を以下のように、ある程度細分化して切り分けることができます。
- WordPress自体の不具合かどうか
- 親テーマの不具合かどうか
- 子テーマの不具合かどうか(カスタマイズが原因かどうか)
- プラグインが原因かどうか(1つずつ有効化することにより原因を特定)
もちろんこのプラグインで全てのトラブルをカバーできるわけではありません。
けれど、WordPress使いたての人が陥る不具合の8割~9割は、このプラグインを利用することにより、原因の絞り込みがしやすくなります。
今回紹介した「トラブルシューティングモード」はワンクリックで切り替えることができますし、原因の切り分けも管理画面からクリック操作でできるので、非常にトラブルシューティングが楽になるかと思います。
とりあえず、WordPressでトラブルシューティングの基本中の基本の「プラグインの全停止」と「デフォルトテーマに変更」がワンクリックでできるだけでも、非常に便利なプラグインだと思います。