WordPress: предотвратить кеширование файла стилей и скриптов темы
Как мы знаем, файлы стилей (с расширением .css) кешируются браузером посетителя, и, если вы внесли очередное изменение в этот файл, то тот же самый посетитель может не заметить никаких изменений, пока кеш в его браузере не будет сброшен.
Есть очень простой и практичный способ, как принудительно сбрасывать кеш посетителя, если вы изменили CSS-файл.
В файле header.php
находим строку, похожую на эту:
<link rel="stylesheet" href="<?php bloginfo('stylesheet_url'); ?>" type="text/css" media="screen" />
<?php bloginfo('stylesheet_url'); ?>
– этот код формирует ссылку на CSS-файл темы. Сразу же после него нужно вставить вот такой код:
?<?php echo filemtime(TEMPLATEPATH . '/style.css') ?>
В результате должна получиться следующая строка:
<link rel="stylesheet" href="<?php bloginfo('stylesheet_url'); ?>?<?php echo filemtime(TEMPLATEPATH . '/style.css') ?>" type="text/css" media="screen" />
По аналогии можно поступать и с файлами скриптов (JavaScript), которые вы подключаете в файле header.php
.
В результате применения вышеуказанного кода адрес до файла вместо изначального вида: http://путь_до_файла/style.css
обретает следующий вид: http://путь_до_файла/style.css?1243581957
.
Цифры, стоящие после имени файла, будут меняться после каждого сохранения файла. Именно это и заставит браузер сбросить кеш, если файл был изменен.
Комментарии (2)
А если файл css подключается функцией?
Это какой-то костыльный метод! Может за 9 лет появился какой-то адекватный метод?