一般的な WordPress の問題をデバッグする方法

公開: 2023-01-25

WordPress は非常に安定した CMS システムであり、ほとんどの場合、問題なく動作します。 ただし、その汎用性のために、場合によっては問題が発生することがあります。 これはいくつかの理由で発生する可能性があるため、トラブルシューティングとデバッグが非常に重要です。 幸いなことに、WordPress には箱から出してすぐに使用できる重要なツールが付属しており、作業がはるかに簡単になります。

この記事では、多くの WordPress 管理者や Web サイト所有者が遭遇する可能性のある最も一般的な問題を検討する前に、WordPress デバッグ ツールについて説明します。 次に、原因と修正を見て、すぐに復旧して実行できるようにします。

デバッグとは

名前が示すように、デバッグは、バグが特定され、ソフトウェア コードから削除されるプロセスです。 すべてではないにしても、ほとんどのソフトウェア開発者は、コードを実行するときのルーチン プラクティスであるコードのデバッグに気付くでしょう。

ただし、コードが品質保証チェックに合格したとしても、ソフトウェアのインストール後に新しいバグが表面化する可能性があります。

これは、開発者がテストしていない環境にソフトウェアがインストールされているなど、さまざまな理由で発生する可能性があります。 ソフトウェア開発者やテスターが、考えられるすべての環境でコードをテストすることは不可能です。ソフトウェアがリリースされることはありません。 これについては、この記事の後半で詳しく説明します。

このような場合、Web サイトの管理者と所有者は、開発者が問題を特定できるように、少しデバッグを行う必要があります。 これは技術的すぎるように聞こえるかもしれませんが、実際には非常に簡単です。 汗だくにしないでください。 この記事ではその方法を説明します。

バグとは? デバッグ画像

バグは、ソフトウェアの予期しない動作です。 この予期しない動作は、エラー、例外、警告など、さまざまな形で現れる可能性があります。 また、機能や機能が期待どおりに動作しない場合もあります。

この場合、ソフトウェア (この場合は WordPress) をデバッグする必要があります。 幸いなことに、WordPress には WP_DEBUG というすぐに使用できるデバッグ ツールが付属しています。

WordPress のデバッグ – WP_DEBUG および WP_DEBUG_LOG

WP_DEBUG は、組み込みの WordPress デバッグ ツールです。 有効にすると、PHP コードによって生成されたすべてのエラー、警告、および通知が表示されます。これは、WordPress を強化する基盤となるテクノロジーです。

一方、WP_DEBUG_LOG は、これらのエラー、警告、および通知をログ ファイルに保存し、サード パーティとの共有を容易にします。 これは WordPress のアクティビティ ログとは大きく異なりますが、ソフトウェアが実行するすべてのアクションを記録し、開発者がコードのどの要素が動作しているかを特定するのに役立ちます。

WP_DEBUG の使い方

WP_Debug はかなり簡単で使いやすいです。 WordPressファイルシステムディレクトリへのSFTPまたはSSHアクセスが必要なので、これがあるかどうかわからない場合は、ホスティングプロバイダーに相談することをお勧めします.

現在、設定はテキスト ファイルに保存されているため、テキスト エディタを使用して有効にする必要があります。 幸いなことに、これは WordPress インストールのルート ディレクトリにある wp-config.php ファイルから実行されるため、非常に簡単に見つけることができます。

探している設定は WP_DEBUG と呼ばれ、以下に示すように、これを true に設定する必要があります。

// WP_DEBUG モードを有効にする
define( 'WP_DEBUG', true );

ロギングを有効にするには、次のように WP_DEBUG_LOG オプションを有効にする必要があります。

// /wp-content/debug.log ファイルへのデバッグ ロギングを有効にします
define( 'WP_DEBUG_LOG', true );

WP_DEBUG_LOG オプションが使用できない場合は、コマンドをコピーして wp-config.php ファイルに貼り付けるだけです。

WordPress サイトのフロント エンドにエラーが表示されないようにするには、次のように WP_DEBUG_DISPLAY オプションを false に設定します。

define( 'WP_DEBUG_DISPLAY', false );

重要な注意: WP_DEBUG は、ライブ Web サイトではなく、テストまたはステージング環境で有効にする必要があります。

特定の問題をトラブルシューティングしている場合は、有効にしたオプションに応じて、WP_DEBUG/WP_DEBUG_LOG オプションを有効にして問題を再現してみてください。 これを行うとエラーが発生し、デバッグ ツールによってログ ファイルに書き込まれます。

一般的な WordPress の問題

WordPress の問題

前述したように、WordPress は非常に安定した CMS です。 多くの開発者が各リリースに数え切れないほどの時間を費やし、多くの人が問題なく実行しています。 評判の良い開発者のテーマとプラグインについても同じことが言えます。 しかし、環境の変化により、問題や衝突が発生する可能性があります。 これは、WordPress 関連のソフトウェアに当てはまり、他のソフトウェアにも当てはまります。 そのため、問題が時々発生する可能性があります。

WordPress の問題は、それが直接 WordPress に関連しているか、テーマやプラグインに関連しているかにかかわらず、必ずしもソフトウェアに問題があることを意味するわけではありません。 多くの場合、これは構成の問題です。 いずれにせよ、WP_Debug はおそらく何が起こっているのかを明らかにするのに役立ちます。

死の白幕

症状

頭字語で WSOD とも呼ばれる死の白い画面は、WordPress Web サイトに現れ、完全に空白の白い画面が表示されます。

原因

多くの要因が WSOD に寄与する可能性がありますが、一般的な原因はプラグインとテーマとの互換性の問題です。 最近プラグインをインストールまたは更新した場合は、プラグインまたはテーマを手動で無効にすることを最初に行う必要があります。

修理

デバッグ ログ ファイルを使用すると、どのプラグインとどのコード行が問題を引き起こしているかをより正確に把握できます。 原因がプラグインまたはテーマであると判断した場合は、開発者に連絡して修正を求めることをお勧めします。 問題が別の場所にある場合は、ログ ファイルを参照すると、問題の原因をより正確に把握できます。
データベース接続の問題

症状

WordPress データベース接続の問題はさまざまな理由で発生し、さまざまな形で現れます。 最も一般的な症状の 1 つは、Web サイトに「データベース接続の確立中にエラーが発生しました」というメッセージが表示されることです。

原因

WordPress は MySQL に依存して、設定や投稿などのデータを保存および読み取ります。 WordPress データベースに接続しないと、Web サイトは機能しません。 データベース接続エラーは、接続や資格情報の問題など、さまざまな理由で発生する可能性があります。

修理

MySQL サーバーが稼働中であり、WordPress がそれに接続できることを確認してください。 特に変更を加えた場合や初めてインストールする場合は、ファイアウォール ルールと構成ファイルを必ず確認してください。 次に、WordPress データベース ユーザーが必要なテーブルに対して十分な権限を持ち、データベース クエリを実行できることを確認します。

メモリ制限/枯渇

症状

メモリ制限に達すると、許可されたメモリが使い果たされたという致命的なエラーが表示されます。

原因

メモリ制限エラーは、WordPress に影響する PHP エラーです。 WordPress の基盤となるテクノロジーである PHP は、メモリを使用して WordPress を含むアプリケーションを実行します。 メモリ制限はハード RAM 制限のように機能し、WordPress がメモリを消費しすぎてサーバーがダウンするのを防ぎます。 デフォルトの制限は 128MB です。 ただし、ホスティング プロバイダーによって異なる制限が設定されている場合があります。

修理

メモリ制限を増やす前に、必要以上にメモリを消費しているものがないことを確認してください。 WordPress が現在のメモリ制限に対して単純に大きくなりすぎた場合は、それを増やしたいと思うかもしれません。 ホスティング プランを利用している場合は、プロバイダーに相談してください。ほとんどの場合、プランをアップグレードする必要があります。

解析エラー: 構文エラー

症状

WordPress Web サイトでアクションを実行すると、解析エラー: 構文エラーが表示されます。

原因

解析エラー: 構文エラーは、WordPress がコードを実行しようとしたときに、実行を妨げる構文エラーが見つかった場合に発生します。 一般に、これは次の 2 つの理由のいずれかで発生する可能性があります。コードが欠落しているか、不適切なバージョンの PHP を使用しています。

修理

最新バージョンの PHP を実行していることを確認してください。 これは簡単な修正であるだけでなく、バ​​グ修正が含まれている可能性がある最新バージョンを実行していることを確認するのに役立ちます。 エラーが続く場合は、エラー自体がどのコンポーネントに問題があるかを示します。 これは、プラグインまたはテーマ (この場合は開発者に連絡する必要があります) か、WordPress (この場合は WordPress コア ファイルを再アップロードする必要があります) かを識別するのに役立ちます。

最大実行時間を超えました

症状

プラグインの更新などのアクションを実行すると、Fatal error: Maximum execution time exceeded が表示されます。

原因

特定のアクションの実行時間が割り当てられた時間を超えると、最大実行時間超過エラーが発生する可能性があります。 この時間制限は、Web サイトがダウンする可能性がある 1 つのアクションがすべての CPU 時間を占有するのを避けるために設定されています。

修理

この問題のトラブルシューティングを行うには、まず、どのアクションが原因であるかを特定します。 Web サイトで最後に行ったことを確認し、WordPress のアクティビティ ログがある場合はそれを参照してください。 次に、WP Crontrol などのプラグインとスケジュールされたアクションを使用して cron ジョブをチェックし、スタックしているものがあるかどうかを確認します。 WP_DEBUG を有効にして、アクションを再試行してください。 次に、エラー ログを確認し、プラグインまたはテーマの場合は、開発者に連絡してください。 別のオプションは、実行時間を増やすことです。

内部サーバーエラー

症状

エラー 500 とも呼ばれる内部サーバー エラーは、WordPress Web サイトの代わりに内部サーバー エラー メッセージを表示します。

原因

内部サーバー エラーは WordPress に固有のものではありません。 これは、コードがない問題が発生したときに Web サーバーが返す HTTP エラー コードです。 この包括的なエラーは、他の情報が提供されないため、トラブルシューティングを困難にする可能性があります。

修理

500 エラーを修正するには、試行錯誤のトラブルシューティングが必要になる場合があります。 特に最近何かをインストールまたは更新した場合は、すべての WordPress プラグインとテーマを非アクティブ化することから始めることをお勧めします。 次に、FTP クライアントを使用して WordPress コア ファイルを再アップロードしてみます。 その他の一般的な修正には、HTACCESS ファイルのチェックと、上記で説明した PHP メモリ制限の引き上げが含まれます。

更新に失敗しました

症状

プラグインの更新後、更新失敗のエラーが表示されます。 自動更新が有効になっている場合は、失敗した自動アップグレードも表示されることがあります。

原因

更新は、優れた WordPress ガバナンスの最も重要な側面の 1 つです。 修正を提供し、新しい機能を追加できます。 更新は、インターネット接続の切断、プラグイン同士の連携の悪さ、WordPress ファイルのアクセス許可など、さまざまな理由で実行に失敗する場合があります。

修理

更新に失敗してもウェブサイトがダウンする可能性は低いため、接続に問題があった場合に備えて、もう一度試してみる価値があります。 次に、Site Health メニューから REST API をチェックし、実行されていることを確認します。 これで問題が解決しない場合は、エラー ログで詳細を確認してください。

メンテナンスモード

症状

完了していない更新の後、WordPress がメンテナンス モードでスタックします。

原因

WordPress は、ファイル、プラグイン、またはテーマを更新するたびに、メンテナンス モードに入ります。 そうすることで、アプリケーションはファイルを「オフライン」にして更新することができます。 このプロセス中に、WordPress は .maintenance ファイルを作成し、ルート ディレクトリに保存します。 何らかの理由で更新が中断された場合、WordPress はこのメンテナンス モードでスタックする可能性があります。

修理

WordPress のメンテナンス モードを解除するには、FTP または SSH 経由でログインし、.maintenance ファイルを削除します。 Web サイトを正常に戻すには、キャッシュを削除する必要がある場合もあります。 WP_DEBUG は問題のトラブルシューティングに役立ちますが、Web サイトがダウンしないように、ステージングまたはテスト環境でこれを試すことをお勧めします。

私のエラーは上記にリストされていません

WordPress 環境は互いに大きく異なる可能性があり、あいまいなエラーが時々発生する可能性があります。 このような場合、WordPress デバッグ モードを有効にすることは、実行できる最善の手順の 1 つです。

これは威圧的に聞こえるかもしれませんが、WordPress がどのように機能するかをよりよく理解するのに役立ち、WordPress をより良くすることができます. WordPress のテスト環境またはステージング環境があると非常に役立つことを覚えておいてください。 このような環境は、ライブ Web サイトを危険にさらすことなく問題をトラブルシューティングする場合に非常に役立ちます.

WordPress のトラブルシューティング

WordPress は、ウェブサイトを確実に実行するために連携する多くのテクノロジーに依存しています。 MySQL と PHP についてかなり説明しましたが、HTML、CSS、Javascript などの他のテクノロジは、Web サイトの表示方法と機能に不可欠です。
評判の良い開発者を選ぶ限り問題はありませんが、多くの場合、他の要因が WordPress エラーの原因となる可能性があります. これは、WordPress デバッグがあなたの友人であることを証明できる場所です。 プラグインやテーマの開発者といえば、何かが壊れたときに助けてくれる人がいることを知って安心できるように、彼らがサポートを提供していることを確認するのに役立ちます.

トラブルシューティングは優れたスキルであり、無数の方法で役立ちます。 ダウンタイムを最小限に抑えることができるだけでなく、より安全で安全な Web サイトのために WordPress のセキュリティ対策を実施する際にも役立ちます。