Static Files Autoversioning to plugin dla Craft CMS, który pomaga uniknąć problemów ze starym cache po wdrożeniu zmian w plikach CSS, JavaScript i innych zasobach statycznych.

Cache przeglądarki i CDN poprawiają szybkość strony, ale podczas wdrożeń potrafią też powodować błędy. Użytkownik może otrzymać starszą wersję pliku CSS albo JavaScriptu, mimo że na serwerze znajduje się już nowy kod.
W prostszych projektach ręczne zmienianie parametrów w adresach plików jest niewygodne. Rozbudowany pipeline z bundlerem również nie zawsze ma sens. Potrzebowałem lekkiego rozwiązania działającego bez dokładania zbędnej warstwy narzędzi.
Plugin dodaje do Twig funkcję version(). Jej zadaniem jest dopisanie wersji zasobu do adresu URL:
{{ version('/dist/css/main.css') }}
Wynik może wyglądać tak:
/dist/css/main.css?v=1717869800
Rozszerzenie współpracuje z Craft CMS 3, 4 i 5 oraz może być używane razem z Varnishem, Cloudflare i narzędziami do statycznego renderowania. Kod jest dostępny publicznie w repozytorium GitHub oraz w Craft Plugin Store.
To niewielkie narzędzie, ale rozwiązuje realny problem, który łatwo zauważyć dopiero po wdrożeniu zmian na produkcję.
🔗 Strona Craft Plugin Store | Repozytorium GitHub