Главная WordPress

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?1 243 581 957.

Цифры, стоящие после имени файла, будут меняться после каждого сохранения файла. Именно это и заставит браузер сбросить кеш, если файл был изменен.

Комментарии (2)

  1. А если файл css подключается функцией?

  2. Это какой-то костыльный метод! Может за 9 лет появился какой-то адекватный метод?

Ваш комментарий