@pornoakter

Как удалить кеш всем юзерам wordpress сайта?

После некоторых правок на сайте появляются различные баги, которые фиксятся сбросом кеша. Но обычные юзеры не знают, что нужно кеш сбросить, чтобы баг пропал. Как можно решить эту проблему?
  • Вопрос задан
  • 63 просмотра
Пригласить эксперта
Ответы на вопрос 2
@EvgenyMorozov
Вам нужно после каждой правки CSS или JS в url файлов нужно добавлять версию, например
https://www.site.ru/js.js?ver=3.6.0

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

https://www.site.ru/style.css?ver=c522fdd6ed3b18a7d5e93e7c172314dc
Ответ написан
Комментировать
artzolin
@artzolin Куратор тега WordPress
php, WordPress разработка сайтов artzolin.ru
При подключении скриптов и стилей с помощью функций wp_enqueue_script() и wp_enqueue_style() вы можете четвертым параметром передать версию файла, тем самым сообщая браузеру, что файл следует обновить, если его версия отличается от той, которую сохранил браузер

Удобнее всего передавать в этот параметр значение функции filemtime(), которая возвращает время последнего изменения файла

function common_scripts() {
	wp_enqueue_style( 'common-styles', get_theme_file_uri( 'assets/css/common.min.css' ), array(), filemtime( get_theme_file_path( '/assets/css/common.min.css' ) ) );

	wp_enqueue_script( 'common-scripts', get_theme_file_uri( 'assets/js/common.min.js' ), array( 'jquery' ), filemtime( get_theme_file_path( '/assets/js/common.min.js' ) ), true );
}
add_action( 'wp_enqueue_scripts', 'common_scripts' );
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы