twig extension asset description - Ppito/zf3-framework GitHub Wiki

Extension Twig permettant la gestion du versionning des fichiers statique.

Principe

Lors de la compilation des fichiers JS/CSS avec Webpack, il est possible d'utiliser un sytème de versionning.
Ce système créer un fichier manifest.json avec la correspondance des fichiers statique et leurs fichiers versionnés.

{
  "build/css/style.css": "/build/css/style.1f3a0aa971243ce2501709804dc5d8cd.css",
  "build/js/app.js": "/build/js/app.f02fcb5b578fa3dd8b6a.js",
  "build/js/common.js": "/build/js/common.0168ce2b2394736dbacd.js",
  "build/manifest.js": "/build/manifest.d41d8cd98f00b204e980.js"
}

Fonction : asset

Cette fonction regarde dans la liste des fichiers de configuration d'asset (préalablement renseigné), s'il trouve une correspondance entre le nom passé en paramètre et le fichier versionné, dans le cas contraire le nom du fichier original est retourné.

<script type="text/javascript" src="{{ asset('build/manifest.js') }}"></script> 
{# <script type="text/javascript" src="/build/manifest.d41d8cd98f00b204e980.js"></script> #}

<script type="text/javascript" src="{{ asset('build/toto.js') }}"></script> 
{# <script type="text/javascript" src="/build/toto.js"></script> #}

À Savoir

Ce système d'asset/versionning permet d'éviter tout problème de cache, car Webpack changera le nom du fichier après chaque modification.

⚠️ **GitHub.com Fallback** ⚠️