CSSにパラメータを付けてキャッシュをクリア
CSSを更新するたびにキャッシュを消したりスーパーリロードをするのが面倒なとき(というかいつだって面倒)、CSSの読み込みソースにパラメータを付けると新しく読み込んでくれます。
HTML
<link rel="stylesheet" href="style.css?任意の文字列">
「?」の後ろに好きな文字列(ver1.0 とか 20220216 とか)をつけて更新します。
CSSだけでなく、JSファイルや画像ファイルにも使えます。
PHPでファイル更新時をパラメータにする
上記のようにHTMLにそのままパラメータを付けると、CSS更新時にそのパラメータを更新しないといけないので(ver1.0 → ver2.0 にする、とか)、PHPで自動で更新されるようにします。
PHP
<link rel="stylesheet" href="style.css?<?php echo filemtime('style.css'); ?>" >
filemtime() | ファイルの更新時刻を取得する。 返り値はUNIX時間(1970年1月1日午前0時からの経過秒数)。 |
WordPressのfunction.phpで読み込む場合はこう。
function.php
function taco_enqueue()
{
wp_enqueue_style('taco-style', get_stylesheet_uri(), array(), filemtime(get_template_directory() . '/style.css'));
}
add_action('wp_enqueue_scripts', 'taco_enqueue');
参考
- PHP: filemtime - Manual
https://www.php.net/manual/ja/function.filemtime.php