WordPress高速化まとめ

キャッシュを利用してWordPress高速化する仕組みとプラグイン

今回はキャッシュを利用してWordPressを高速化する方法に挑戦です。WordPressではキャッシュ系のプラグインが多数ありますが、そもそもキャッシュの役割や仕組みについてちょっと知っておくと理解が深まると思います。

かく言う私も専門家ではありませんが、私の脳内の認識を書き出してみたいと思います。

WordPressでの記事表示の仕組み

かなり大雑把に説明しておきますと、WordPressで作成した記事を見ようとするとWordPressではリクエストされた記事を探しに旅立ちます。どこへ行くのか?というと記事が収納されているデータベースへ行きます。

そんで必要な記事の情報を持って帰ってくるのですが、ご存知のようにWordPressは基本的に「PHP」という言語を使って作られています。

WordPress独自の「テンプレートタグ」とHTMLが組み合わされたこれらPHPファイルを最終的にHTMLにしてブラウザで表示させるという流れです。

このような流れが毎回行われる事になります。でもコレって毎回必要?という訳でキャッシュの説明に入ります。

キャッシュをして高速化できるのでは?

毎回1連の流れを行うのは大変です。そこでキャッシュという仕組みを利用する事にします。

例えば一度投稿した記事って何度も何度も変更する事ってあまりないですよね、そこでHTMLとして出力されたデータを保存(キャッシュ)しておき、一々データベースまで行く手間を省ければ表示速度も上がるのでは?というアイディアになります。

つまりリクエストが来てから動くのではなく、最初から用意しておけば合理的でよくね?という発想です。

そして「ページ」のキャッシュだけじゃなくて「データベース」もキャッシュしてみたり、WordPressの「変数」と呼ばれる部分もキャッシュ(オブジェクトキャッシュ)してみたり、「ブラウザのキャッシュ」も利用したら?と色々な試みでたくさんのプラグインが登場します(想像です)。

キャッシュできる部分としては大きく分けて4種類あります。

  • ページのキャッシュ
  • データベースのキャッシュ
  • オブジェクトキャッシュ
  • ブラウザのキャッシュ

これらのキャッシュを利用する事で処理にかかる負担を減らして表示を軽くする事ができるハズです。

キャッシュ系のプラグインを利用する場合の注意点

先ほど書いたようにキャッシュできる部分は4種類くらいあります(細かく言うともっとあると思われます)。プラグインによっては1つのプラグインで全部カバーできるプラグインもありますし、ページのキャッシュだけというプラグインもあります。

すなわち機能がダブると不具合の原因になる可能性がありますのでそれぞれの機能を把握しておく事が重要です。

先に述べておきますが、上記4つのキャッシュを全て網羅してくれるプラグインがあります。「W3 Total Cache」というプラグインですが、私にはあまりに高機能過ぎて不具合があった時に対処する自信がありませんので、このプラグインは利用していません。

「W3 Total Cache」を利用される場合は下記に紹介するプラグインは必要ないと思われます。

これから私が利用している幾つかのキャッシュ系プラグインを紹介しますが、他のプラグインとの相性や環境によっては不具合が出たり、逆に表示が遅くなる場合もありますので、1つ1つ確かめながら利用する事をおすすめします

ページキャッシュ用のプラグイン「WP Super Cache」

ページキャッシュ用のプラグインとしては、「WP Super Cache」を利用しております。有名キャッシュ系プラグインの1つです。

ロリポップ利用でこのこのプラグインを設定しようとするとエラーがでましたが、パーミッションの変更でエラーはなくなります。詳しくはこの記事で確認して下さい。
WP Super Cacheの設定とエラーや警告が出た場合の対処方法

「WP Super Cache」の設定方法はこちらの記事。
「WP Super Cache」の設定方法!キャッシュを利用してWordPress高速化

データベースのキャッシュ「DB Cache Reloaded Fix」

データベースのキャッシュは「DB Cache Reloaded Fix」を利用しています。

このプラグインに関してはインストール、有効化して「設定」画面で「有効」にチェックをしれてキャッシュの有効期限を設定するだけです。「保存」を忘れずに。ちなみに有効期限はお好みで設定します(私は760分にしてます)。

キャッシュ-1

オブジェクトキャッシュ「WP File Cache」「MO Cache」

オブジェクトキャッシュはWordPressで使っている「変数」をキャッシュしてくれます。オブジェクトキャッシュについては「WP File Cache」を利用しています。

それから1回1回翻訳する手間もキャッシュして省いてしまおうというのが「MO Cache」というプラグインの役割です。「MO Cache」単体では動かないため、先ほど紹介した「WP File Cache」と一緒に利用するというのが定番です。

※私の環境では「WP File Cache」と「MO Cache」で時々不具合があったので、現在は「001 Prime Strategy Translate Accelerator」というプラグインを利用してます。

有効化したら「設定」⇒「Translate Accelerator」を選択します。設定しているのは次の項目です。

  • キャッシュを有効化にする
  • サイトに表示される翻訳された文章:キャッシュを使用
  • ログイン/サインアップ画面の翻訳:キャッシュを使用
  • 管理画面の翻訳:キャッシュを利用

翻訳キャッシュ

ブラウザのキャッシュ

最後になります、ブラウザのキャッシュについてはプラグインは使わずに「.htaccess」というファイルにちょっと記述する事で実現できますのでプラグインは不要です。

詳しい設定の仕方や記述についてはまた別記事で紹介します。