Параметры вида ?ver=6.5.3 у CSS и JS в WordPress часто раздражают владельцев сайтов и попадают в отчёты по производительности. На практике проблема не в самом параметре, а в том, как его обрабатывают CDN, прокси и некоторые кеширующие плагины. Если убрать его неаккуратно, можно получить старые стили, сломанный JS или неконсистентный кеш после обновлений темы и плагинов.
Ниже — рабочий сценарий: когда query strings действительно стоит убирать, как это сделать через код или плагин, и как проверить результат без гадания по DevTools.
Когда query strings мешают, а когда трогать их не нужно
В WordPress версия файла в URL используется как простой способ сбросить кеш браузера после обновления. Например, /wp-includes/css/dist/block-library/style.min.css?ver=6.5.3 меняется при обновлении ядра, а значит браузер и промежуточные кеши видят новый адрес и подтягивают свежий файл.
Проблема возникает в двух типичных случаях:
- CDN или прокси игнорирует параметр
verи кеширует файл как будто URL одинаковый; - в отчётах Lighthouse/Pagespeed это выглядит как лишний параметр, хотя реального выигрыша от удаления нет.
Если у вас обычный хостинг без CDN и без агрессивного edge-кеша, убирать query strings только ради «красоты» не обязательно. Но если вы уже упёрлись в нестабильный кеш или видите, что обновления стилей доходят до пользователей с задержкой, имеет смысл привести схему версионирования к более предсказуемой.
Диагностика: что именно ломается
Сначала проверьте, где именно возникает проблема. Это важно, потому что одинаковый симптом может иметь разные причины.
1. Посмотрите заголовки ответа
Откройте проблемный CSS/JS в браузере и проверьте заголовки через DevTools или curl. Если CDN отдаёт cache hit на URL с разными query string, значит параметр не участвует в ключе кеша.
curl -I