@Gerasim971

Как обновить кэш сайта у клиентов?

Всем привет, подскажите столкнулся с проблемой, после правок информации на сайте, не применились изменения именно на мобильных версиях клиентов, стоят плагины кеширования все норм настроено, чистил вручну.ю, отключал, удалял, не помогло, прописывал метатеги "Cache-Control" и т.д. тоже не сработало, у кого какие предположения есть, что еще можно сделать?
  • Вопрос задан
  • 118 просмотров
Пригласить эксперта
Ответы на вопрос 4
artzolin
@artzolin
php, WordPress разработка сайтов zolin.digital
Функция wp_enqueue_style() четвертым параметром принимает версию файла. Браузер ее смотрит и если новой версии у него нет - скачивает

wp_enqueue_style( $handle, $src, $deps, $ver, $media );


Для удобства вы можете передавать в этот параметр дату последнего изменения файла в UNIX:

$ver = filemtime(get_stylesheet_directory() . '/assets/css/common.min.css');


Такая же логика работает и для функции wp_enqueue_script()
Ответ написан
HistoryART
@HistoryART
Надзиратель
Если с одного девайса много раз тесты проекта проводились, то там скорее всего браузер, кэш браузера почистите и перезапустите сервер. Потом должно заработать, работает для меня, когда багуется кэш.
Ответ написан
DanArst
@DanArst
Э, Ойboy!
Правки в плане стилей были? Если да, то можно просто изменить версию css-файла на сайте:
например было
<link rel='stylesheet' href='css/ styles.css' type='text/css' media='all' />

теперь сделайте так
<link rel='stylesheet' href='css/ styles.css?ver=2.0' type='text/css' media='all' />
Ответ написан
@rPman
лучший способ контроля за кешем на стороне клиента - это менять имя/ссылку на контент

т.е. вместо подключения main.css пиши main.css?x=1 (в следующий раз сменишь 1 на 2 и т.п.), вебсервер статику вернет ту же самую но на стороне клиента это будет совершенно новый файл

Самое верное, автоматизировать процесс, в момент выкладывания файла на веб сервер, менять ихимя (и во всех местах его использования) на содержащее хеш сумму от его содержимого, например: 3f90ee1b.main.css

p.s. чтобы на клиенте файл был принудительно запрошен игнорируя кеш, можно нажать ctrl+f5
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы