初歩からの無職

WordPressの古いCSSキャッシュを読み込ませない方法

  • WordPress

今更ながらcssの古いキャッシュ問題は現場ではどうしてるんだろうとふと疑問に思ったのですが、cssの末尾に任意のクエリをつけることで新しいCSSを読み込ませてるみたいです。定番テクらしいですが恥ずかしながら知らなかった。

テーマをいじることも増えたので、Godios.の子テーマのstyle.css読み込み時に更新日時のクエリを追加するようにfunctions.phpを修正しました。

/*---------------------------------------------------------------------------
 * 子テーマのCSS読み込み
 *---------------------------------------------------------------------------*/
add_action( 'wp_enqueue_scripts', function() {

    $child_theme = wp_get_theme();
    $timestamp =  '?last_modified=' . date('Y-m-d-His', filemtime(get_stylesheet_directory() . '/style.css' )); 
    wp_enqueue_style( 'godios-child-style', get_theme_file_uri( '/style.css' ), [], $child_theme->Version . $timestamp);

}, 10 );

結果: .../style.css?ver=1.0.3?last_modified=2018-11-18-141842

子テーマのバージョンクエリのあとに更新日時のクエリが無事追加されました。

超簡単なのにPHP触ってないので演算子が予想と違ったりして無駄に苦戦してました。JavaScriptも食わず嫌いをやめたら世界が広がったのでPHPも触るべきか…。