Définir des règles d'affectation des gabarits

Le fichier template_assignment.xml dans le dossier cms/skins/[skinName]/conf permet de conditionner l'utilisation des gabarits par le contributeur.

Définir des conditions

Il est possible de définir des règles d'attribution des gabarits. Par exemple, un gabarit créé spécifiquement pour la page d'accueil ne peut être attribué qu'à une page dont l'URL est /index.html. C'est ce qui est décrit dans l'exemple ci-dessous.

template_assignment.xml

<?xml version="1.0" encoding="UTF-8" ?>
<templates>
    <list mode="exclude">
        <template name="login" />
    </list>
    <conditions>
        <condition template="index">
            <page regexp_path="index" />
        </condition>
        <condition template="*">
            <page reverse_regexp_path="index" />
        </condition>
    </conditions>
</templates>

Restreindre la liste des gabarits disponibles

Dans la balise <list> l'attribut "exclude" permet d'exclure les gabarits cités dans cette balise, de la liste des gabarits mis à disposition du contributeur. Dans cet exemple, le gabarit Login n'apparait pas dans la liste des gabarits proposés au contributeur. Néanmoins, le gabarit login existe, il est utilisé par le CMS pour afficher une page d'authentification. Si ce gabarit n'existe pas, c'est automatiquement le gabarit page qui est utilisé. Généralement, les gabarits non utilisables par le contributeur sont utilisés par des plugins.