【Simplicity】CSSに更新時間を付けてブラウザキャッシュ除外。更新したら勝手に再読み込みさせる方法

よろしければシェアお願いします!

新規サイトを作成すると、「ここが違う・・・ここはこうやって」など、デザイン面で更新頻度が高くなります。ブラウザキャッシュはgtmetrixの指示通り6か月を.htaccessに記載。

ってか6か月って長くね?ってなり、更新があれば、都度キャッシュを書き換えて欲しいなと思うようになりました。こちらは個人的にチャレンジしたメモになります。
参照 worklog

環境はテーマはSimplicity2です。。

Simplicity

cssは子テーマに書き込むので、子テーマの末尾にバージョンor更新時刻をパラメーターで付与すれば、常に最新のキャッシュを保持できることが分かりました。

.css?○○○○
.css?××××
上記のようにする。

場所

simplicity2/lib/scripts.php
200行目辺り、

子テーマが存在しているときだけに呼び出すスタイル


//子テーマのstyle.css
wp_enqueue_style( 'child-style', get_stylesheet_directory_uri() . '/style.css', array('simplicity-style', 'simplicity-style') );

これに更新時間の引数を付与する為に下記のものを追加。

filemtime( get_stylesheet_directory().'/style.css')

cssの後に「?時刻」を入れればいいので

    //子テーマのstyle.css
    wp_enqueue_style( 'child-style',  get_stylesheet_directory_uri() . '/style.css?'. filemtime( get_stylesheet_directory().'/style.css') , array('simplicity-style', 'simplicity-style') );

これでできた。

ファイル更新するとパラメーターも更新されキャッシュも更新されている。
たぶんOK

更新日付をcssに付与

注意事項

動作の補償はしませんので、必ず調べてからバックアップを取って実行してください。

スポンサーリンク

よろしければシェアお願いします!