# Fonctionnement du multi-templating

Le système de multi-templating est implémenté par l'extension [OtTemplating](/ot_templating)

> **ATTENTION**: Le terme de "template" désigne aussi les gabarits de pages dans typo3, donc attention 
> à ne pas confondre. On essaiera de parler ici de gabarits dans le cas des pages.

Un thème est un ensemble de gabarits de pages (aussi appellés templates) et d'assets.

> **Important**: Chaque template doit rester entièrement indépendant des autres

### Sélection d'un template

Un module backend dédié permet aux administrateurs d'un site de sélectionner le template choisi, et de
modifier leurs préférences.

Le template choisi par une structure ainsi que les préférences d'affichage sont enregistrés dans les
champs `template` et `template_preferences` de la table `ot_websites`.

### Découpage des répertoires

Les répertoires correspondant aux [layouts](/ot_templating/Resources/Private/Layouts) et [partials](/ot_templating/Resources/Private/Partials), 
ainsi que le [répertoire des assets](/ot_templating/Resources/Public/assets) possèdent des sous-répertoire correspondants au template courant.

En revanche, les [gabarits de pages](/ot_templating/Resources/Private/Templates) sont communs à tous les templates.
Ce sont ces gabarits qui appellent le layout du template désiré.

Ce layout, à son tour, appelle tous les partials dont il a besoin (header, footer, assets...).





