Частая проблема в разработке это сброс кеша после изменение стилей, скриптов, картинок. Вы изменили что-то, у вас на компьютере это выглядит по новому, а кто-то другой заходит, а у него старые версии файлов, все новшества ломаются. Начинаются удивления, шок, паника 🙂
Существует множество подходов к решению этих проблем в WordPress.
Вчера наткнулся на один достаточно простой, элегантный и удобный способ автоматического сброса кеша при каждом изменении статических файлов, основанный на времени изменения файла с функцией filemtime().
Пример
add_action('init', function(){
wp_register_style(
$name = 'my-style',
$url = plugins_url( 'assets/style.css', __FILE__ ),
$dep = array(),
$version = filemtime( plugin_dir_path( __FILE__ ) . 'assets/style.css' )
);
});
Теперь при каждом изменении стиля, к ссылке на файл будет добавляться временная метка. Это решает проблемы с закешированными устаревшими файлами.
А этот метод будет тормозить?
Сомнительно. Вот тут есть эксперимент https://stackoverflow.com/questions/5850180/cost-of-file-modification-time-checks
Там проверили 1 000 000 файлов таким способом. Это заняло 0,02 секунды.
В реальных проектах файлов которые надо проверять таким образом в 1000 раз меньше. Птм можно сказать что потерь времени нет.
Способ отлично работает, пока у вас один веб сервер