Как принудительно обновлять файлы стилей в кэше

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

Если вы используете кэширование, то встречались с ситуацией, когда в браузере отображается старый вид блога, даже если файл стилей style.css был обновлен. В этой ситуации помогает только сброс кэша, который позволит браузеру закачать новый вариант кэша с уже измененными файлами. Однако есть один способ, позволяющий отправлять в браузер всегда новый, измененный вариант файла стилей.

Способ основан на использовании специальной функции, добавляющей к имени файла счетчик, меняющийся после каждого обновления этого файла. Обычно подключение файла стилей выглядит примерно так:

<link rel="stylesheet" href="" type="text/css" media="screen" />

Эту строчку чаще всего можно встретить в файле header.php. Есть такая функция — filemtime. Она возвращает время последнего изменения файла. Это время можно автоматически добавлять в ссылку на файл style.css. Если сделать так:

</pre>
<p>то функция вернет время последнего изменения файла style.css. Это и можно использовать для формирования всегда актуального варианта файла для кэширования. Используя эту функцию, получаем:</p>
<pre><link rel="stylesheet" href="?" type="text/css" media="screen" />

В результате адрес до файла style.css каждый раз при его редактировании автоматически изменяется с

http://путь_до_файла/style.css

на

http://путь_до_файла/style.css?20111115124136

Файл остается на том же месте, меняется только его содержимое, но плагин кэширования считает, что это новый файл, и обновляет кэш. Таким образом вы все время имеете в кэше самый свежий вариант style.css, что помогает избежать ошибок с отображением в браузере изменений в стилях блога. Этот же способ можно применять и для других подключаемых файлов, которые подвержены частым изменениям (например, файлах скриптов).

tiaurus

Автор n-wp.ru — блога о WordPress для новичков.

Оцените автора
Добавить комментарий

  1. rainylive

    Спасибо, полезная функция

    Ответить
  2. ig0r74

    Чето не нашел как добавить пост к себе в фейворитс. Раньше был флажок, сейчас в упор его не вижу…

    Ответить
    1. Скрипт некорректно работает с последней версией jQuery, поэтому я отключил такую возможность. Скорее всего буду отказываться от него, поэтому советую сохранить список выбранных постов локально.

      Ответить
  3. Vasily

    Спасибо что написали где искать код, ато никто не пишет

    Ответить
  4. Алена

    Хвала небесам! Спасибо огромное за совет, только он мне и помог. Перепробовала кучу способов, причем у меня не стоит плагин кэширования… Пробовала чистить кэш в браузуре, писала в мета не кэшировать, писала на php не кэшировать, даже переименовывала вручную файл стилей — ничего не помогало, показывает по старому, хоть ты его убей. Чуть с ума не сошла))

    Ответить