WordPress基礎知識

修正したのに反映されない⁈ WordPressキャッシュ問題の本当の正体。

WordPressキャッシュの仕組みと対策

デザインを修正した。設定を変えた。新しい記事を公開した。

それなのに、画面には古い表示のまま——。

「あれ?反映されていない?」
「もしかしてアップロードできていなかった?」
と焦った経験はありませんか?

実はこれ、多くの場合「キャッシュ」が原因です。
しかしキャッシュとは何なのか、なぜ問題を起こすのか、そしてどう対処すればいいのかを正しく理解している人は意外と少ないのが現実です。

さらに厄介なことに、「キャッシュのせいだ」と思い込んでいたら、実はまったく別の原因だった——ということすらあります。

この記事では、キャッシュの仕組みをわかりやすく解説しながら、Kuuがどのようにこの問題に向き合っているか、
そして「キャッシュのせい」と決めつける前に確認すべきことをお伝えします。

そもそもキャッシュとは何か

WordPressキャッシュの基本

キャッシュとは、一度読み込んだデータを一時的に保存しておく仕組みのことです。

例えば、あなたがあるウェブサイトを訪問したとき、ブラウザはそのページの画像やCSS、JavaScriptなどのファイルを読み込みます。

キャッシュはこれらのファイルを手元に保存しておき、次回同じページを訪問したときに「また読み込む」のではなく「保存済みのものを使う」ことで、表示を速くする仕組みです。

つまりキャッシュは本来、「スピードを上げるための良い仕組み」です。

問題が起きるのは、サイト側でファイルを更新したのに、ブラウザやサーバーが「古いキャッシュ」を使い続けてしまうときです。

キャッシュには種類がある

キャッシュの3つの種類

「キャッシュ」という言葉は一つですが、実は存在する場所によって複数の種類があります。
ここを混同してしまうと、対処法を間違えることになります。

まずブラウザキャッシュ。
これは読者のブラウザがページのファイルを保存しているキャッシュです。
読者のパソコンやスマートフォンの中に保存されているため、サイト運営者側からは直接操作できません。
読者が「強制リロード」や「キャッシュ削除」を行うことで解消されますが、一般の読者にそれを求めるのは現実的ではありません。

次にサーバーキャッシュ。
レンタルサーバーがページ全体を保存しているキャッシュです。
同じページへのアクセスがあった際、WordPressがページを一から生成するのではなく、保存済みのHTMLを返すことで表示を高速化します。
これは積極的に活用すべきキャッシュです。

そしてCSSバージョンキャッシュ。
CSSやJavaScriptのファイルをブラウザがキャッシュしている状態です。
テーマのデザインを修正してもブラウザが古いCSSを使い続けるため、「修正したのに反映されない」という現象が起きます。

さらにもう一つ、見落とされやすいキャッシュがあります。
プラグインの軽量化キャッシュです。
WP-Optimizeなどのプラグインには「CSS/JavaScriptの圧縮・結合」機能があり、これが元のCSSとは別に圧縮版のファイルをキャッシュとして保存しています。
ブラウザキャッシュを削除しても、サーバーキャッシュをクリアしても反映されない場合、このプラグインキャッシュが原因であることがあります。

キャッシュのメリット・デメリット

キャッシュのメリットとデメリット

キャッシュをひとことで「悪者」と決めつけてしまうのは正確ではありません。
正しく理解するためにメリットとデメリットを整理しましょう。

メリットとしては、ページの表示速度が大幅に向上します。
サーバーへの負荷が減り、同時アクセスが多い場合でも安定した表示が可能になります。

読者にとって「速いサイト」を実現するための重要な手段です。

デメリットとしては、サイトの更新が読者に届くまでにタイムラグが生じます。
デザイン修正やコンテンツ更新が即座に反映されないことがあります。

また、ブラウザやデバイスによって異なるキャッシュが保存されているため、
「自分には反映されているのに別の端末では古い表示のまま」
という状況も起きます。

「直ったはずなのに」が起きる理由

CSS変更が反映されない原因

Kuuテーマの制作過程で、実際にこの問題が起きました。

CSSを修正してサーバーにアップロードしたにもかかわらず、Chromeでは古いデザインのまま表示され続ける——という現象です。
Safariでは正しく表示されているのに、Chromeだけが古いCSSを使い続けていたのです。

原因はCSSファイルのバージョン管理でした。
WordPressでCSSを読み込む際、
ファイル名の末尾に「?ver=1.0」のようなバージョン番号が付与されます。
このバージョン番号が変わらない限り、
ブラウザは「同じファイルだ」と判断してキャッシュを使い続けます。

CSSを更新しても、バージョン番号が変わっていなければ、
ブラウザは古いキャッシュを使い続けるのです。

「キャッシュのせい」と決めつける前に

ここで、Kuuの開発中に経験した、もう一つの教訓的なエピソードをお話しします。

見出しのデザインを変更してサーバーにアップロードしました。
ブラウザキャッシュを削除しました。
サーバーキャッシュもクリアしました。
WP-Optimizeの軽量化キャッシュもリセットしました。
シークレットウィンドウでも確認しました。

それでも、見出しのデザインが変わらない。

何時間も格闘した末にわかった原因は、キャッシュではありませんでした。

実はCSSは正しく反映されていたのです。
見出しの線の色にCSS変数を使っていたのですが、その変数の色が背景色とほぼ同じだったため、
線が存在しているのに目視では確認できなかっただけでした。

開発者ツールでスタイルを確認すると、新しいCSSは確かに適用されていました。
取り消し線も引かれていない。
ただ、色が見えなかっただけ。

「反映されない=キャッシュのせい」と思い込んでしまうと、
本当の原因にたどり着けなくなります。

キャッシュを疑う前に、まず開発者ツール(Cmd+Option+IまたはF12)でCSSが実際に適用されているかを確認する。
これが最も確実な第一歩です。

下書きページと公開ページの違いにも注意

もう一つ、キャッシュとは無関係なのに「反映されない」と感じてしまうケースがあります。

WordPressの下書きプレビューと公開ページでは、キャッシュの挙動が異なります。
下書きプレビューは管理者用の特殊な表示のため、テーマのCSSが完全には適用されないことがあります。

「CSSを修正したのにプレビューで反映されない」と焦ったら、まず公開済みのページで確認してみてください。
公開ページでは正しく反映されていることがほとんどです。

この問題も、Kuuの開発中に実際に経験しました。
何度リロードしても変わらないと思っていたページが、実は下書きのプレビュー画面だった。
公開済みのページを開いたら、ちゃんと反映されていたのです。

Kuuがキャッシュ問題を防ぐ仕組み

Kuuのキャッシュ対策の仕組み

Kuuテーマではこの問題を「 filemtime() 」という仕組みで解決しています。

「 filemtime() 」はファイルの「最終更新日時」を取得するPHPの関数です。
CSSファイルを読み込む際のバージョン番号として、この最終更新日時のタイムスタンプを使用することで、CSSを保存するたびに自動的にバージョン番号が変わります。

バージョン番号が変わると、ブラウザは「新しいファイルだ」と判断して、キャッシュを使わず最新のCSSを読み込みます。

つまり、Kuuテーマを使うユーザーはCSSを更新したら必ず最新のデザインが反映されるという状態が自動で保たれています。
「修正したのに反映されない」というストレスをユーザーに与えない設計です。

一方でページキャッシュは速度向上のために活用できる状態を保っています。
キャッシュを全部無効にするのではなく、「問題になるキャッシュだけを自動で解決する」——これがKuuのアプローチです。

キャッシュ問題が起きたときの対処法

キャッシュ問題の対処法

それでもキャッシュの問題が起きた場合の対処法をまとめます。

まずブラウザの強制リロード。
Macでは「Cmd + Shift + R」、Windowsでは「Ctrl + Shift + R」で強制リロードができます。
ブラウザのキャッシュを無視して最新のファイルを読み込みます。
まず最初に試すべき方法です。

次にブラウザキャッシュの削除。
Chromeの場合は「設定→プライバシーとセキュリティ→閲覧履歴データの削除」からキャッシュを削除できます。
「全期間」を選択して削除すると確実です。

それでもダメならWordPressキャッシュプラグインのクリア。
WP-Optimizeなどのキャッシュプラグインを使っている場合、WordPress管理画面からキャッシュをクリアできます。
「軽量化」タブにCSS/JS圧縮のキャッシュがある場合は、そちらもリセットしてください。

さらにレンタルサーバーのキャッシュを削除する。
ブラウザの強制リロードやキャッシュ削除をしても反映されない場合、レンタルサーバー側のキャッシュが原因になっていることがあります。
エックスサーバーやシン・レンタルサーバーの場合、サーバーパネルの「高速化」メニュー内にある「サーバーキャッシュ設定」からキャッシュを削除できます。

そして最後に、開発者ツールで確認する。
すべてのキャッシュをクリアしても反映されない場合は、そもそもキャッシュが原因ではない可能性があります。
開発者ツール(Cmd+Option+IまたはF12)を開いて、CSSが実際に適用されているか確認してください。
スタイル欄でプロパティに取り消し線が引かれていなければ、CSSは正しく適用されています。
色や値の問題かもしれません。

実際に私自身も、レンタルサーバーのキャッシュ自動削除がオフになっていたために画像が更新されない現象に遭遇しました。
そしてCSS変数の色が見えないだけなのにキャッシュのせいだと何時間も格闘した経験もあります。
どちらも、原因の切り分けが大切だと痛感した出来事でした。

「直ったはずなのに」を、二度と繰り返さないために。

キャッシュの正しい理解

キャッシュは敵ではありません。

正しく理解して活用すれば、サイトを速くしてくれる頼もしい味方です。
問題が起きるのは「キャッシュ自体が悪い」のではなく、「更新と古いキャッシュの間にズレが生じたとき」です。

そして、すべてが「キャッシュのせい」とは限りません。
下書きと公開ページの違い、CSS変数の色の問題、プラグインの圧縮キャッシュ。
「反映されない」の裏にはさまざまな原因が潜んでいます。

焦ったときほど、まず開発者ツールを開いてみてください。
答えはたいてい、そこにあります。

Kuuはキャッシュのズレを自動で解消する仕組みを持っています。
ユーザーが「修正したのに反映されない」と悩む時間を、コンテンツを書く時間に使ってほしいからです。

キャッシュの仕組みを知ること。
それは、WordPressと正しく付き合うための第一歩です。
WordPressの仕組みを知り、安心して、書くことに集中する…

Kuuにはそれを可能にする環境が、しっかりと整っているのです。

参考文献

気になる内容はぜひリンク先もご覧ください。

WordPressの変更が反映されない時の解決策(Kinsta)
WordPressで更新内容が画面に反映されない原因を、キャッシュの仕組みとともに丁寧に解説しています。「直したはずなのに変わらない」と感じたとき、まず読むべき一記事です。
https://kinsta.com/jp/blog/wordpress-changes-not-showing/

CSSが反映されないトラブルの解決フロー(greenstyle)
style.cssの変更が反映されない場合の原因と、CSSの優先順位を含めた解決手順を具体的に紹介しています。Kuuテーマの開発中にも直面した問題を体系的に理解するのに役立ちます。
https://greenstyle.co.jp/style-css-editor-style-css/

WordPressキャッシュとブラウザキャッシュの違い(nishi2002)
混同されがちなWordPress側のキャッシュとブラウザ側のキャッシュの違いを、視覚的にわかりやすく解説しています。この2つを正しく区別することが、キャッシュ問題解決の第一歩です。 https://www.nishi2002.com/28253.html

filemtimeを使った自動キャッシュクリアの実装(yachin29)
CSSファイルにfilemtimeのタイムスタンプを付与することで、ファイルを更新するたびに自動でブラウザキャッシュを無効化する方法を解説しています。Kuuテーマが採用している仕組みそのものです。
https://yachin29.hatenablog.com/entry/2025/08/07/073311

wp_enqueue_style()の公式ドキュメント(WordPress Developer Resources)
めんどくせえWordPressでCSSを安全かつ正しく読み込むための公式関数の解説です。バージョン管理を含めたCSSの読み込み方法を、WordPress公式の視点から理解できます。
https://developer.wordpress.org/reference/functions/wp_enqueue_style/

ブラウザ別スーパーリロードの方法(株式会社ええやん)
ChromeやSafariなどブラウザ別のスーパーリロード方法と、それでも解消しない場合のキャッシュ削除手順をまとめています。キャッシュ問題に直面したときの実践的な対処法です。
https://ok-design.co.jp/blog/3274/

ChromeのキャッシュとCookieを削除する手順(Google公式)
Googleが提供するChrome向けのキャッシュ削除手順です。「強制リロードしても変わらない」という場合の確実な解決策として、公式の手順を参照することをおすすめします。 https://support.google.com/accounts/answer/32050?hl=ja&co=GENIE.Platform%3DDesktop

WP-Optimize公式ページ — キャッシュと軽量化機能(WordPress.org)
WP-Optimizeの公式プラグインページです。ページキャッシュだけでなくCSS/JavaScriptの圧縮・結合機能があり、この軽量化キャッシュが「見落とされやすいキャッシュ」として問題の原因になることがあります。
https://ja.wordpress.org/plugins/wp-optimize/

Chrome DevToolsでCSSを確認・デバッグする方法(サルワカ)
Chrome開発者ツールを使ってCSSの適用状況を確認する方法を初心者向けに解説した記事です。「キャッシュのせい」と決めつける前に開発者ツールで確認するという、本記事の教訓を実践するための手引きになります。
https://saruwakakun.com/html-css/basic/chrome-dev-tool

HTTPキャッシュの仕組み(MDN Web Docs)
ウェブ技術のリファレンスとして世界中の開発者が参照するMDNによる、HTTPキャッシュの解説です。なぜキャッシュが発生するのかを根本から理解したい方に最適な資料です。
https://developer.mozilla.org/ja/docs/Web/HTTP/Guides/Caching

この記事をシェアする