2026年7月3日

2026年7月3日

WP Rocketのモバイルキャッシュ設定|「別のキャッシュファイル」が必要なサイトの見分け方

WP Rocket のモバイルキャッシュは、管理画面の「設定 → WP Rocket」の「キャッシュ」タブにある「モバイルキャッシュ」の項目で設定します。レスポンシブデザインのテーマ(CSS だけでスマホ表示を切り替えるテーマ)なら、モバイル端末にもキャッシュを配信するだけで十分で、モバイル専用のキャッシュファイルは不要です。PHP でスマホ向けに別の HTML を出しているサイトだけが「モバイル用に別のキャッシュファイルを作成する」設定を必要とします。この記事では、自分のサイトがどちらに当たるかの見分け方と、設定後の確認方法、つまずきやすい点を説明します。

WP Rocket はモバイルをどう扱うか

WP Rocket のページキャッシュは、ページの HTML を静的ファイルとして保存し、次の訪問者にはそのファイルを返すことで高速化します。このときモバイルについて考えるべきことは2つです。

  • モバイル端末にキャッシュを配信するか:配信しないと、スマホからのアクセスは毎回 PHP とデータベースを通るため、キャッシュの効果がスマホで得られません。
  • モバイル用に別の HTML を保存するか:パソコンとスマホで同じ HTML を出しているなら、キャッシュは1種類で足ります。別々の HTML を出しているなら、キャッシュも分けないと、パソコン用の HTML がスマホに表示される(またはその逆の)事故が起こります。

WP Rocket の画面はバージョンによって項目の構成が変わっています。以前のバージョンには「モバイル端末のキャッシュを有効にする」と「モバイル端末用に別のキャッシュファイルを作成する」の2つのチェックボックスがありましたが、最近のバージョンでは、モバイルへのキャッシュ配信が標準で有効になり、残る項目は「別のキャッシュファイル」にあたるものが中心です(2026年10月現在)。表記は日本語化の状況でも変わるため、意味で読み取ってください。

「別のキャッシュファイル」が必要か見分ける

判断の基準は、サーバーがユーザーエージェント(端末の種類)を見て HTML を変えているかどうかです。次のどれかに当てはまる場合は、別のキャッシュファイルが必要です。

  • テーマやプラグインが wp_is_mobile() を使って、スマホ用のメニューや広告、レイアウトを PHP 側で出し分けている
  • スマホ専用テーマに切り替えるプラグインを使っている
  • 広告タグや計測タグを、端末によってサーバー側で差し替えている

コードを検索して確かめる

SSH で入れるなら、テーマとプラグインに wp_is_mobile が使われているかを検索するのが早いです。

cd /path/to/wordpress/wp-content
grep -rln "wp_is_mobile" themes/your-theme plugins | head -n 20

見つかっても、管理画面だけで使われているなど、公開ページの HTML に影響しないこともあります。該当ファイルの処理を読み、フロント側の出力を変えているかを確認します。

実際の HTML を比べて確かめる

コードを読めない場合は、パソコンとスマホのユーザーエージェントで HTML を取得して比べます。キャッシュされた HTML 同士を比べても意味がないため、ステージング環境で WP Rocket を一時的に無効にするか、キャッシュを経由しない状態で取得してください。

UA_PC="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0 Safari/537.36"
UA_SP="Mozilla/5.0 (iPhone; CPU iPhone OS 17_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.0 Mobile/15E148 Safari/604.1"

curl -s -A "$UA_PC" https://staging.example.com/ > pc.html
curl -s -A "$UA_SP" https://staging.example.com/ > sp.html
diff pc.html sp.html | head -n 40

nonce やタイムスタンプなど、毎回変わる値だけが違うなら同じ HTML とみなせます。メニューやブロックの有無、読み込む CSS が違うなら、端末によって出し分けています。

設定の手順

  1. 管理画面で「設定 → WP Rocket」を開き、「キャッシュ」タブを選びます。
  2. 「モバイルキャッシュ」の項目で、モバイル端末へのキャッシュ配信が有効になっていることを確認します(旧バージョンでは該当のチェックボックスをオンにします)。
  3. 前の章で「出し分けている」と分かった場合だけ、「モバイル端末用に別のキャッシュファイルを作成する」にあたる項目をオンにします。
  4. 変更を保存し、キャッシュをクリアします。保存時に WP Rocket がキャッシュを消すこともありますが、管理バーの WP Rocket メニューからクリアしておくと確実性が上がります。

レスポンシブなテーマで別ファイルを有効にしても表示は壊れませんが、キャッシュファイルが2倍になり、プリロードやクリアの負荷も増えます。必要ないなら無効のままがよい理由です。

設定後の確認

キャッシュが返っているか

ログアウトした状態(またはシークレットウィンドウ)でページを開き、ソースの末尾を見ます。WP Rocket のキャッシュが返っていれば、末尾に WP Rocket による最適化を示す HTML コメントが付いています。ログイン中のユーザーには、標準設定ではキャッシュが返らないため、管理者のまま確認しても判断できません。

コマンドならスマホのユーザーエージェントで取得して末尾を見ます。

curl -s -A "$UA_SP" https://example.com/ | tail -n 3

モバイル用のファイルが作られているか

別のキャッシュファイルを有効にした場合、スマホでアクセスした後に、サーバーの wp-content/cache/wp-rocket/ドメイン名/ 以下へ、ファイル名に mobile を含む HTML が作られます。パソコン用のファイルしかなければ、スマホからのアクセスがまだないか、手前のキャッシュ(後述)がリクエストを受けている可能性があります。

つまずきやすいポイント

CDN やサーバーのキャッシュが手前にある

Cloudflare などの CDN で HTML までキャッシュしている場合、WP Rocket が端末別にファイルを分けても、CDN がパソコン用の HTML をスマホにも返してしまうことがあります。サーバー会社のキャッシュ機能(サーバーキャッシュ、リバースプロキシ)も同様です。端末で出し分けているサイトでは、手前のキャッシュも端末ごとに分ける設定にするか、HTML をキャッシュしない設定にします。一部のホスティングでは WP Rocket のページキャッシュ自体が無効化され、サーバー側のキャッシュが使われるので、その場合はホスティング側の設定を確認してください。

端末の判定が一致しない

WP Rocket と wp_is_mobile() は、ユーザーエージェントの判定方法が同じではありません。タブレットなど境界にある端末で、WP Rocket はパソコン扱い・テーマはモバイル扱い(またはその逆)になると、表示がちぐはぐになります。タブレットでの表示も確認し、問題があればテーマ側の出し分けをやめて CSS のレスポンシブ対応に寄せるのが根本的な解決です。

特定のアプリやボットにキャッシュを返したくない

モバイル専用のアプリ内ブラウザなど、特定のユーザーエージェントにだけキャッシュを返したくない場合は、「高度なルール」タブにあるキャッシュしないユーザーエージェントの指定を使います。モバイルキャッシュの設定とは別の項目です。

表示速度の計測で差が出る

PageSpeed Insights などの計測ツールはモバイルのユーザーエージェントでアクセスします。キャッシュのクリア直後はモバイル用のキャッシュがまだないため、1回目の計測が遅く出ることがあります。計測前にスマホのユーザーエージェントで一度アクセスしておくと、キャッシュが効いた状態の数値を確認できます。

まとめ

  • モバイル設定は「設定 → WP Rocket → キャッシュ」の「モバイルキャッシュ」で行う
  • レスポンシブなテーマなら、モバイルへのキャッシュ配信だけでよく、別のキャッシュファイルは不要
  • wp_is_mobile() などで PHP 側から HTML を出し分けているサイトだけ、別のキャッシュファイルを有効にする
  • 出し分けの有無は、コード検索とユーザーエージェント別の HTML 比較で確かめる
  • CDN やサーバーのキャッシュが手前にあると、端末別のキャッシュが効かないことがある

お気軽にご相談ください

お見積りへ お問い合わせへ
▲