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)

  1. Морис
    30 декабря 2016 г. в 21:27

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

  2. 13 сентября 2018 г. в 10:22

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

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

Жирный текст

Ссылка

Цитата

Внутристрочный код

CSS-код

HTML-код

JavaScript-код

PHP-код