Googleがページ表示速度が遅いサイトの検索順位を下げるSpeed Updateを実施するなど、ページの読み込み速度が非常に重要になっています。
そこで、Wordpressでは誰でもカンタンにページ読み込みなどの高速が行えるキャッシュプラグインが多数登場していますが、何も考えずにキャッシュプラグインを導入してしまうとデザインが崩れるなどのトラブルに遭遇してしまうことがあります。
ですので今回は、
- WordPress 高速化で起きるありがちなトラブル
- WordPress 高速化で起きるトラブルの対処方法
の2つを紹介しています。
WordPress高速化で起きるトラブル
エラーメッセージがページ上部に表示される
キャッシュプラグインでとりあえずいろんな設定を有効化していると、
「…/public_html/wp-content/plugins/sample-plugin/config_frontpage.php on line XXX」
のようなエラーがトップページに表示されてしまうことがあります。
このエラーはWordPress にログインしている管理人のみに表示されるのではなく、全く知らない人にも表示されます。
英文メッセージということもあり、これがあるだけでユーザーにとって怪しいサイトと思われてしまうので絶対に避けるべきトラブルです。
デザインが壊れる(CSSが効かない)
- サイドバーがない
- 文字装飾が聞いてない
- 見出しがただの太字テキスト
- そもそもレイアウトがボロボロ
こういったデザインが壊れるトラブルが発生することもあります。
もしこうなってしまったら、原因の特定をする前にプラグインを停止して元に戻すようにしましょう。
元に戻らず非常に焦っているのであれば、一度当サイトまでご相談下さい。症状に合わせて復旧させていただきます。
画像の遅延読み込み(Lazy Load)が効かない
WordPressキャッシュプラグインとかなり相性の悪いのが画像遅延読み込みができるLazy Loadです。
Lazy Loadは仕様上読み込みタイミングが特殊で、キャッシュプラグインの影響で全く遅延読み込みできなくなるということがよくあります。
画像が表示されない
これもLazy Loadを有効化していると発生することがある症状になります。
Lazy Load機能で画像を読み込む前の状態にできたのは良いものの、その後の本画像の読み込みに失敗するケースです。
こうなってしまうとせっかく記事内に画像を貼り付けても全く表示されなくなってしまうので、気づき次第すぐにキャッシュプラグイン・Lazy Loadのどちらかを無効化してまともに見れる状態に直すようにしましょう。
キャッシュプラグインによる高速化はそれからです。
解決方法(上級者向け)
はじめに言っておくと、 WordPress高速化で発生するトラブルを自力で解決するのは非常に難しいです。
また、トラブル解消しようとして逆に悪化させてしまうこともあるので、自分でやる際はよく注意して試すようにしましょう。
自分で解決する場合は「Updraft Plus」などを使ってバックアップを取り、万が一に備えた状態でするとより安全です。
フッターに移動するJavaScriptを一部だけ除外する
WordPressの高速化で以下の症状が発生した場合は、高確率でJavaScript関係のエラーが発生しています。
- サイドバーのウィジェットが追従しなくなった
- Lazy Loadが効かなくなった(常に同期読み込み)
- 画像が全て真っ白(Lazy Load不具合)
- その他ボタンが効かない
- TablePressの並び替えが機能しない
このようなJavaScript(jQuery)で動作する機能は、JavaScriptをフッターに移動してページ読み込みを高速化機能を使うと機能しなくなることがあります。
これらのエラーを解決するには、以下のいずれかの方法を取る必要があります。
- 問題となるテーマ・プラグインのファイルを特定し、フッターに移動するJavaScriptから除外する
- 必ずヘッダーで読み込まれるようにテーマ・子テーマを修正する
- 代替の効くテーマ・プラグインに変えてみる
このいずれかの方法で問題は解決できます。
テーマ・プラグインの変更を除いて、「他人のプログラムを解読して分析できる程度のプログラミング能力」が必要であるため、難しい場合は一度ご相談ください。
Lazy Load機能付きキャッシュプラグインを使用する
Lazy Load機能が効かなくなって困るという方は、Lazy Load機能付きのキャッシュプラグインを使うと、キャッシュプラグインでの高速化と画像遅延読み込みの両方を実現できる可能性が高いです。
Lazy Load対応キャッシュプラグイン
- Autoptimize
- WP Fastest Cache Premium
同じプラグイン内の機能が競合することはあまりないので、Lazy Load対応上記プラグインを試してみると良いでしょう。
キャッシュプラグインを変えてみる
プラグインによって高速化の方法やタイミング・優先順位が少し異なります。
ですので、今使っているキャッシュプラグインでうまく行かなかったとしても、他のキャッシュプラグインを使うことでトラブルなく高速化できることがあります。
WordPressの高速化に利用できる主なプラグインは以下の5つです。
- Autoptimize
- WP Super Cache
- WP Fastest Cache(有料版推奨)
- Simple Cache
- Varnish Caching
WordPressキャッシュプラグイン選びを難しくしているのが、「使用中テーマ・プラグインによって相性の良いキャッシュプラグインが変わってくる」ということです。
とあるサイトではAutoptimizeが一番良いということもあれば、WP Fastest Cacheが最も相性が良いということも少なくありません。
これらは一度試験導入してテストする必要があり、一概にこれが一番オススメということはないのです。
もし、自サイトに適切なキャッシュプラグインを導入したいというのであれば、当サイトまでご相談ください。
プラグインのプログラムをカスタマイズして呼び出しタイミングを調整する
この方法は「add_action」などのフックを理解していないならおすすめしません。
キャッシュプラグインは、何かの処理のあと(ページコンテンツを読み込んだ後)などにフックと優先順位を設定していることがほとんどです。
プラグインのソースコードを解析してフック関数を特定し、その呼出タイミングを調整すれば高速化特有のトラブルを解決できる可能性があります。
非常に難しい方法であるほか、あまり現実的な方法ではないので、何をやっても駄目だった時の最終手段と思っておいてください。
高速化は重要だが気をつけて高速化すること
プラグイン一つで高速化できると言うと非常に魅力的ですが、実は適切に高速化しようと思うとかなり難しかったりします。
ページ高速化目的で導入したLazy Load(画像遅延読み込み)と競合してLazy Loadが機能しなくなるなど、高速化出来てるように見えて実は高速化できていないということが少なくないので、かなり注意しなければなりません。
かんたんに見えて難しいのがWordPress高速化なので、ユーザーの利便性(UX)を高めるために高速化したいという場合はぜひ当サイト「WordPress のお医者さん」までお問い合わせください。