WordPressプラグインの競合を修正および防止するための究極のガイド
公開: 2023-02-16WordPress プラグインは基本的に必要なすべての機能を提供できるため、どのサイトにも強力に追加できます。 しかし、プラグインは信じられないほど便利な場合もありますが、多くの場合、サイトのエラー、バグ、クラッシュ、パフォーマンスの問題、さらには死の恐ろしい白い画面の中心にあります.
実際、死の白い画面に直面したり、ギャラリーのスライダーやボタンがあるはずのピクセル化されたアートワークを表示するためにログインしたりしていない場合 (すべてプラグインのおかげです)、自分自身に十分な賞賛を与える必要があります。 !
真実は、私たちは皆、悪いプラグインが問題になる可能性があることを知っています. そのため、適切なプラグインを選択し、それらを最新の状態に保ち、プラグインが想定どおりに機能しなくなった場合に何をすべきかを学ぶのに役立つガイドがたくさんあります.
ただし、プラグインの競合状況とその解決方法は簡単ではありません。
プラグインはさまざまな開発者によって作成されているため、あるプラグインの背後にあるコードが別のプラグイン、テーマ、または WordPress バージョンのコードと競合しないことを保証することはほとんど不可能です! その結果、多数のプラグインを使用している場合、競合が遅かれ早かれライブ Web サイトで視覚的または機能的なエラーを引き起こすことはほぼ避けられません (まだ発生していない場合)。
そのため、現在災害の真っ最中でなくても、競合が発生した場合に対処するための予防策とトラブルシューティング スキルの両方を採用することが最善の利益になります。
プラグインの更新についていくのは面倒に感じるかもしれませんが (特に複数の WordPress Web サイトを管理しようとしている場合)、それらの更新はセキュリティという理由で公開されています。
脆弱性は常に発見されており、WP Engine はプラットフォームを安全に保つために懸命に働いていますが、サイトの古いプラグインは攻撃者に対して脆弱なままです. Smart Plugin Manager を使用すると、プラグイン (およびテーマ) の自動更新でこの面倒な作業をオフロードできるため、サイトが最新の状態に保たれているという安心感が得られます。 詳しくはこちら。
この究極のガイドでは、次のことを学びます。
- プラグインの競合とは何ですか?なぜ発生するのですか?
- 競合を認識する方法: プラグインの競合エラーはどのように見えますか?
- 管理パネルにアクセスできるときにプラグインの競合を修正する方法
- サイトをクラッシュさせるプラグインの競合を修正する方法
- 予防のヒント: プラグインの競合を回避する方法
プラグインの競合とは何ですか?なぜ発生するのですか?
用語が示すように、プラグインの競合は、2 つ以上の WordPress プラグインが互いに衝突した結果です。 それに加えて、プラグインの 1 つと テーマ、場合によっては WordPress のバージョン。
通常、競合する当事者が複雑または重要であるほど、Web サイトに影響を与える可能性が高くなります。 メインのプラグインまたはメインのテーマの 1 つが大きな競合に巻き込まれた場合、その余波は視覚的または機能的な混乱につながります。
では、なぜプラグインやテーマの競合が発生するのでしょうか?
技術的に言えば、両者が互いに制限するコードまたは直接矛盾するコードを実行しようとすると、競合が発生します。
すべてのプラグインとテーマは独自の役割を担っていますが、これはいくつかの理由で発生する可能性があります。
- 2 つの主要なプラグインの間で、コードが非常に複雑なため、リソースの競合が発生する可能性があります。たとえば、e コマースの在庫や課金プラグインなどです!
- 1 つの悪い魚が池全体を台無しにしました。別名、1 つのプラグインの背後にある不適切なコードが他のプラグインを制限し、すべてをダウンさせた可能性があります。
- プラグインを更新した後、最新バージョンがテーマと互換性がないことが判明する場合があります。
- バッチ自動更新は、2 つ (またはそれ以上) のプラグイン間で機能戦争を開始し、両方が競合するコマンドを実行しようとして、ライブ Web サイトの同じ部分に影響を与えた可能性があります!
…そしてリストは続きます。
要するに、競合は多くの理由で発生する可能性があります。 それはすべて、各プラグインまたはテーマの背後にあるコードと、潜在的な競合を回避するために開発者が取った手順に要約されます!
競合の認識: 競合エラーはどのように見えるか?
プラグインの競合はさまざまな理由で発生する可能性があるため、トリガーされるエラーもさまざまな形や形をとる可能性があります。
Web サイトの一部の見た目や動作を面白くすることから、恐ろしい死の白い画面を削除することまで、プラグインの競合がすべての原因であることがほとんどです。
プラグインの競合は WordPress サイトのエラーの背後にある一般的な原因ですが、エラーを見ただけでは競合を特定するのは難しい場合があります!
そのため、トラブルシューティングの目的で、エラー自体に焦点を当てるのではなく、自分の Web サイトに残されたアクセスと制御のレベルを確認する必要があります。
つまり、競合は主に 2 つの方法で Web サイトに影響を与える可能性があります。 次のことができます。
- ライブ Web サイトでエラーを引き起こしますが、管理パネルと Web サイトには引き続きアクセスできます。
- サイトがクラッシュし、管理パネルからロックアウトされるホワイト スクリーン オブ デス (WSOD) を引き起こします。
これらのエラーは両方とも、他の要因によって引き起こされる可能性があることに注意してください。 たとえば、視覚的なバグの傑作は、古いプラグインまたは互換性のないテーマの結果である可能性があります. または、サーバーがメモリ制限に達したために WSOD が発生した可能性があります。
それにもかかわらず、Web サイトで何らかの問題が発生し、基本的なトラブルシューティングがうまくいかないように見える場合は、競合が本当の原因であることはほぼ確実です。
管理パネルにアクセスできるときに競合を修正する方法
Web サイトで直面している問題に関係なく、管理パネルにまだアクセスできる場合は、地獄が解き放たれることはありません!
次のトラブルシューティング手順を通じて、競合を特定し、競合しているプラグイン (またはテーマ) を見つけ、競合エラーを修正する方法をすべて WordPress 管理パネルから学びます。 各ステップの詳細については続きをお読みください。最初に、実行する必要があることを簡単にまとめます。
管理パネルにアクセスしているときにプラグインの競合を修正するには:
- ブラウザのキャッシュをクリアします。
- プラグインが更新されていることを確認してください。
- WordPress のバージョンまたはテーマの競合を除外して、本当にプラグインの競合であるかどうかを判断します (これにはステージング サイトが推奨されます)。
- 競合の原因となっているプラグインをブラウザ コンソールから追跡するか、各プラグインを 1 つずつ手動で非アクティブ化および再アクティブ化します。
- 問題のプラグインの 1 つまたは両方を置き換えてから、開発者にバグを報告してください。
1.ブラウザのキャッシュをクリアする
特にプラグインの更新後、ブラウザのキャッシュが古いコードを保持し、新しいコードを反映できないことはよくあることです。 そうでないことを確認するために、キャッシュをクリアしてください。
Chrome を使用している場合は、 「ctrl+shift+del」を押して、 「キャッシュされた画像とファイル」を選択し、 「クリア」を選択します。 Safariの場合は「option+command+E」 → 「空」を選択。
2.プラグインが更新されていることを確認してください
管理エリアにログインし、すべてのプラグインが最新バージョンに更新されていることを確認します。
3 プラグインと WordPress のバージョンの競合を確認する
まず、あなたは アクティブなプラグインが現在のバージョンの WordPress と互換性があるかどうかを確認してください。 これを行うことができます:
- 互換性の問題、保留中の重要な更新などを特定する Better Plugin Compatibility Control などのプラグインの助けを借りて.
- WordPress ダッシュボードのプラグイン セクションに手動でアクセスし、各プラグインの互換性を 1 つずつ確認します。
互換性のないプラグインがある場合は無効にします。 Web サイトに戻り、すべてが正常に戻っているかどうかを確認します。 はいの場合、明らかにプラグインと WordPress のバージョン間の競合が Web サイトの問題の背後にありました。
エラーが引き続き発生する場合は、次の手順に進みます。
4.プラグインとテーマの競合を確認する
次に、すべてのプラグインとアクティブなテーマの間で問題がないことを確認します。
テーマの競合の検出を開始するには、サイト (できればステージング) のテーマを WordPress のデフォルトに切り替えます。
管理ページから、 「外観」 → 「テーマ」に移動します。 そこで、人気のTwentyTwentyOneテーマを「有効化」します。 今あなたのウェブサイトをチェックしてください。 テーマの変更で問題が消え、テーマの競合の真っ只中にいることに気づきました。 とりあえず、ライブ Web サイトのテーマもデフォルトに変更します。
競合するプラグインを見つけるには、ステージングに戻り、以前のテーマを再アクティブ化し、エラーが消えるまでプラグインを 1 つずつ非アクティブ化します。 存在する場合は、有罪のプラグインも隔離されています。
プラグインまたはテーマを保持できます。 どちらの場合でも、開発者に連絡して問題を報告してください。彼らはそれを修正するかもしれません!
一方、テーマの変更後もエラーが続く場合は、元のテーマにも問題はありません。 Web サイトで 2 つのプラグイン間で競合が発生している可能性があります。 この場合、好みのテーマを再度アクティブにして、次のステップに進みます。
5.プラグインとプラグインの競合を確認する
考えられるテーマと WordPress のバージョンの競合を除外したので、プラグインを掘り下げたいと思います。 すべてのプラグインを無効にすることから始めます。
プラグインページに移動します。 「プラグイン」の横にある空のボックスをチェックして、すべてのプラグインを選択します。 [一括操作]ドロップダウン メニューから[非アクティブ化] を選択します。
ウェブサイトに戻って、問題がまだ解決しているかどうかを確認してください。
すべてのプラグインを無効にしてエラーが消えたら、出来上がりです! プラグインの競合を分離して特定しました! そうでない場合は、プラグインに問題はないと言って差し支えありません。 この場合、htaccess エラーを確認するか、ホスティング プロバイダーや社内開発者に連絡することをお勧めします。
*注:ホスティング プロバイダーに助けを求めることができないと思いませんか? 管理された WordPress ホストに切り替える時期かもしれません。
6.有罪のプラグインを見つける
コンソールが役に立たない場合は、 有罪のプラグインを手動で特定します。 このため、プラグインを 1 つずつ再アクティブ化します。 問題がいつ再発するかを確認します。
ランダムなプラグインから始めるのではなく、最初に主要なプラグインを再アクティブ化するか、問題に直接関連している可能性のあるプラグインを再アクティブ化することから始めます。 一度に 1 つのプラグインを再アクティブ化し、ステージング サイトをチェックし続けます。
問題が再発した場合は、問題のあるプラグインの 1 つが見つかりました。
もう一方を見つけるには、最初に競合するプラグインを有効にしたままにし、以前に再有効化したプラグインを一度に 1 つずつ無効にします。 この場合、別のプラグインを無効化して問題が解決した場合、そのプラグインは明らかに他の競合するプラグインです。
7.有罪のプラグインを置き換えて報告する
有罪のプラグインを見つけたら、次のいずれかを選択できます 両方または重要性の低い方を無効にします。 また、有罪のプラグインのいずれかを置き換える代替プラグインまたはコード スニペットを試してみることもできます。
それまでの間、両方のプラグインの背後にある開発者とメールやサポート スレッドで連絡を取り、競合の詳細を今行ったトラブルシューティングのスクリーンショットと共有してください。
ほとんどのプラグインとテーマの開発者は、コードを完璧にしようと努力しているため、少なくとも喜んで問題を解決したり、役立つ情報を提供したりできます。
サイトがクラッシュする原因となる競合を修正する方法
死の悪名高い白い画面またはサイトのクラッシュは、WordPress サイトの所有者の間で最も恐ろしい悪夢です。 さらに、サイトがクラッシュすると、通常、管理パネルにアクセスできなくなります。これは非常に恐ろしいことです。
恐ろしいことですが、良いニュースは、ダウンしている場合でも、Web サイトと管理パネルにアクセスする方法がいくつかあるということです!
次の手順では、そのような方法の 1 つを概説します。セキュア ファイル転送プロトコル (SFTP) 方式、 アマチュアユーザーでも、Web サイトにアクセスして競合を簡単に解決することができます。 各ステップの詳細については続きをお読みください。最初に、実行する必要があることを簡単にまとめます。
管理パネルにアクセスできない場合 (または白い画面が表示される場合) にプラグインの競合を修正するには:
- FileZilla などの (S)FTP プログラムをインストールします。
- ウェブサイトを接続します。
- SFTP 経由でファイルにアクセスして、テーマとプラグインを無効にします。
- サイトへのアクセスが回復したら、ログインして管理パネルからトラブルシューティングを開始します。
- サイトがまだダウンしている場合は、ホスティング プロバイダーにお問い合わせください。
1. FileZilla のような単純な (S)FTP プログラムをインストールします。
人気のある FileZilla のような SFTP クライアントを使用すると、スタンドアロン ソフトウェアをダウンロードして資格情報でログインするだけで、システムからリモートでサイト ファイルにアクセスできます。
FileZilla Web サイトにアクセスして、最新バージョンをインストールします。
2. Web サイトを接続する
FileZilla プログラムを開くと、QuickConnect オプション ボタンが表示されます。
それをクリックし、サイトの資格情報を入力して Web サイトに接続し、そのファイルにアクセスします。 ここでは、次のものが必要です。
- あなたのホスト名
- あなたのユーザーネーム
- あなたのパスワード
この情報は、ホスティング プロバイダーから初期セットアップ ドキュメントとともに提供されているはずですが、見つからない場合は、ホスティング プロバイダーのサポート チームがお手伝いします。
3. ファイルにアクセスして、プラグインとテーマを無効にします
ウェブサイトに接続すると、右側に「リモート サイト」パネルが表示されます。 ここで、「public_html」に移動します フォルダ。 これにより、接続しているサーバー上の Web サイトのファイルとディレクトリが一覧表示されます。
その下で、 「wp-content」を見つけます。 ここには、プラグインとテーマ ファイルの両方があります。
plugins フォルダーの名前をplugins-deactivatedやplugins-renamed などの任意の名前に変更するだけで、すべてのプラグインを一度に無効にできます。 テーマ フォルダーで同じことを行います。
あなたのウェブサイトは自動的にデフォルトのテーマにロールバックされ、アクティブ化されたプラグインはゼロになります.
キャッシュをクリアして、ウェブサイトをもう一度確認してください。 サイトのクラッシュの背後に競合があった場合は、Web サイトと管理パネルが復旧するはずです。
WordPress 管理エリアへのアクセスが回復したら、前のセクションで説明した手順に従って、最初からアクセスしていたようにトラブルシューティングを行います。
プラグインとテーマを無効にしてもサイトがまだダウンしている場合は、サイトのクラッシュの背後に別の原因があります。 サーバーのメモリ制限が飽和している可能性があるため、ホスティング プロバイダーに連絡してください。
予防のヒント: プラグインの競合を回避する方法
プラグインの競合から抜け出す方法をトラブルシューティングする方法がわかったので、それが再び醜い頭をもたげるのを防ぎたいと思うでしょう!
大量のプラグインを使用している場合、競合を完全に回避することは難しいかもしれませんが、競合を最小限に抑えるために採用できる基本的な予防策があります。
WordPress プラグインの競合と死の白い画面を防ぐには:
- Web サイトを定期的にバックアップします (または、ホスティング プロバイダーがこれを行っていることを確認してください)。
- ライブ Web サイトに変更を加えないでください。 (代わりに、ステージング サイトまたはローカル サイトを使用してください。)
- プラグインを最新の状態に保ち、古いプラグインを回避します。
- バッチまたは自動更新を避けます。
- 使用するプラグインの数を、本当に必要なプラグインの数に制限します。
1. 健全なバックアップの実践を確立する
本番サイトでのあらゆる種類の災害に対するフェイルセーフのようなバックアップを考えてください。 Web サイトの定期的なバックアップを作成する習慣を身につけようと決心した瞬間に、潜在的な競合エラーに対して自動的に大きなアドバンテージが得られます。
バックアップ ソリューションとして、以下を選択できます。
- ホスティング プロバイダーが提供する信頼できるバックアップ サービスを選択してください。
- サードパーティのバックアップ プラグインをインストールします。
- ファイルを手動でバックアップします。
言うまでもなく、バックアップが手元にあれば、Web サイトで何か問題が発生したときにいつでも簡単に復元できます。
2.ライブWebサイトに変更を加えないでください
プラグイン、テーマ、または WordPress のバージョンをインストールまたは更新する場合、特に何も問題が発生していない場合は、実際の Web サイトで直接実行したくなることがあります。
ただし、競合を真に回避するには、ステージング サイトまたはローカル サイト (ライブ プロダクション サイトのクローンとも呼ばれる) を設定することを検討する必要があります。ライブ サイトに変更をプッシュする前に、安全に変更を加えてテストすることができます。
これを行うのは思ったよりもはるかに簡単で、バックアップと同様に、ホスティング プロバイダーが有効にする必要があります。
3. 最新の状態を保ち、時代遅れを避ける
新しいアップデートはまれなバグを引き起こしますが (それはステージングが検出するものです!)、古いバージョンのプラグイン、テーマ、または WordPress のバージョンを実行することはさらに悪いことです!
サイトの全体的な健全性のためだけでなく、バグや競合を回避するためにも、すべてが更新されていることを確認してください。
これは、古いプラグインや、たとえば過去 6 か月間更新されていないプラグインを避ける必要があることも意味します。
4. バッチと自動更新の実行を避ける
確かに、自動化には魅力があり、同時に実行するプラグイン更新のバッチをスケジュールまたは選択することで時間を節約できることは間違いありませんが、それには落とし穴があります!
まず第一に、競合はバッチ更新の後に最も頻繁に発生します。 さらに、もしそうなら、競合するプラグインを見つけるという時間のかかる試練を経験しなければなりません.
競合を最小限に抑えるには、各プラグインを個別に更新し、各更新後にエラーの兆候がないか確認してください。 このようにして、どのプラグインが競合を引き起こしているかをすぐに知ることができます。
5.少ないほど多い
プラグインの競合を回避する最善の方法の 1 つは、もちろん、プラグインをまとめて回避することです。 これは完全に可能というわけではありませんが、絶対に必要なプラグインのみを保持することを検討してください。
他のほとんどの場合、プラグインはコードのスニペットに置き換えることができます。サードパーティのプラグインに依存するのではなく、開発者と相談して作業を完了することをお勧めします.
まとめ!
簡単に言えば、プラグインは命の恩人になる可能性がありますが、独自の荷物をもたらします. この記事が、Web サイトのプラグインの競合を特定して解決するのに役立つだけでなく、それらをよりよく理解するのに役立つことを願っています.
さらに、トラブルシューティングのスキルを磨き続け、ベスト プラクティスに固執する限り、エラーのない Web サイトに一歩近づくことができます。
この記事は Nidhriti Bhowmik によって書かれ、最初は 2019 年 4 月に公開されました。最終更新日は 2023 年 2 月です。