かんろぐ Written by kan

【WordPress】filemtimeを使用してブラウザのキャッシュをクリアする【functions.php】

CODE Web制作 WordPress

PR ※当サイトではアフィリエイト広告を利用しています


「キャッシュクリアが面倒、、。毎回クライアントに頼むのはちょっと嫌だなぁ、、ソースコードで対応できる方法を聞いたことあるけどどうやるのか知りたい!」

こういった悩みを解決します。

さっそくですが、キャッシュクリアはさまざまな方法があります。
例えば下記の通り。

  • プラグインを使用する方法
  • スーパーリロードをする
  • ブラウザのキャッシュを削除する

WordPressプラグイン「WP Super Cache」や「W3 Total Cache」など、有名なプラグインもあります。
しかし、プラグインを入れるのもサイトへの負荷がありますし、これらを毎回クライアントに確認してもらうたびに「キャッシュクリアお願いします・・」なんて言いづらいですよね。

しかし、実装者側でできることで「クエリパラメータを変更」することで、上記の手間を減らすことができます。

今回はその方法を紹介していきます。

解説コードの紹介

まずは下記を見てください。


/**
* キャッシュクリアするためのCSS、JavaScriptの読み込み法方
*/

function my_script_init()
{
wp_enqueue_style('style', get_template_directory_uri() . '/css/style.css', array(), '1.0,1', 'all');
wp_enqueue_script('js', get_template_directory_uri() . '/js/script.js', array( 'jquery' ),'1.0.1', true);
}
add_action('wp_enqueue_scripts', 'my_script_init');

↓//下記のように変更してみてください

function my_script_init()
{
wp_enqueue_style('style', get_template_directory_uri() . '/css/style.css', array(), filemtime( get_theme_file_path( 'cssのパスを記載/style.css' )), 'all');
wp_enqueue_script('js', get_template_directory_uri() . '/js/script.js', array( 'jquery' ), filemtime( get_theme_file_path( 'jsのパスを記載/script.js' )), true);
}
add_action('wp_enqueue_scripts', 'my_script_init');

変わったところというと、基本的なfunctions.phpに書くことは変わらないのですが、「1.0.1」の部分を「filemtime」に書き換えているところです。

毎回この「1.0.1」→「1.0.2」のように変えていくのも良いのですが、ちょっと面倒だと思います。

その際に「filemtime」に置き換えることで、自動的に「ファイルの更新時刻を取得」してくれるようになります。

なので、上記のように置き換えることで自動的にキャッシュからではなく更新されたサーバーから情報を取得できるようになったわけですね。

filemtimeの解説

filemtime( get_theme_file_path()) 」は、WordPressテーマファイルの最終更新日時を取得するための関数です。filemtime()は、指定されたファイルの最終更新日時を取得する PHP の関数です。

get_theme_file_path() は、テーマディレクトリ内のファイルのパスを取得できます。

つまり、filemtime( get_theme_file_path()) は、WordPress テーマファイルの最終更新日時を Unix タイムスタンプ形式で取得するための関数です。この関数を使用すると、テーマファイルの最終更新日時を確認することができます。

簡単ですね!

以上になります。

参考になったらぜひリツイートしてくれると嬉しいです(`・ω・)ゞ
リツイートする

他にも記事を見てみる

この記事を書いた人
かんろぐ/プロフィールアイコン
かん
未経験からWeb制作会社へ転職 | Webの楽しさや転職のあれこれを発信 | 転職サポート「CodeChange」主催 / 転職成功15名超 | WordPress・Shopify | CodeBegin転職講師 | マナブさん弟子 | カオマンガイとサウナ | ブロガー | ●かんろぐ運営/月間7,600PV達成 |

合わせて読みたい記事