<page xmlns="http://projectmallard.org/1.0/"
      type="topic" id="perso_templates" xml:lang="fr">

<info>
  <title type="sort">2</title>
  <credit type="author">
    <name>Frédéric Péters</name>
    <email>fpeters@entrouvert.com</email>
  </credit>

<link type="guide" xref="index#personnaliser" />
<desc>Les modèles de page et les modèles de mails</desc>
</info>

<title>Modèles de courriels et de pages</title>

<section id="mail">
	<title>Modèles de courriels</title>
	<p></p>

<p>
De nombreux éléments permettent l'utilisation d'un système simple permettant
de générer du contenu variant suivant certaines données. L'exemple le plus
simple peut être le contenu d'un courriel, dans lequel l'utilisateur se voit
souhaiter la bienvenue.
</p>

   <figure>
                <media type="image" src="figures/courriels.png" />
            </figure>

<example>
<code>
Bienvenue [session_user_display_name],

Toute l'équipe de [site_name] vous remercie de votre inscription
et vous souhaite une agréable visite.
</code>
</example>

<p>
À l'usage, les contenus proposés entre crochets seront substitués, pour donner
le résultat suivant :
</p>

<example>
<code>
Bienvenue <var>Lætitia</var>,

Toute l'équipe de <var>Quizz du jour</var> vous remercie de votre inscription
et vous souhaite une agréable visite.
</code>
</example>

<p>
Il est également possible d'afficher du contenu de manière conditionnelle,
en utilisant la syntaxe <code>[if-any]...[end]</code> ou <code>[if-any]...[else]...[end]</code>.
</p>

<example>
<code>
Pour rappel, voici les renseignements que vous nous avez fournis :

[if-any form_var_regime_alimentaire]
 - Régime alimentaire : [form_var_regime_alimentaire]
[else]
 - Aucun régime alimentaire précisé.
[end]
</code>
</example>

<note><p>
Pour plus d'informations, il existe une
<link href="https://code.google.com/p/ezt/wiki/Syntax#Directives">référence
détaillée</link> sur le système de template (en anglais).
</p></note>
</section>

<section id="creer_modifier_squelette">
<title>Modèle de page</title>

<p>Le squelette (modèle) définit l'agencement de toutes les pages publiques à l'intérieur d'un thème particulier. C'est-à-dire qu'au sein du thème choisi, il est encore possible d'agir sur la présentation de toutes les pages publiques en modifiant le squelette utilisé. Les squelettes sont de simples fichiers texte qui contiennent (entre autres choses) un certain nombre de variables, écrites entre crochets. Ces variables sont remplacées dans la page publique, par la valeur qui leur a été attribuée. Voici les variables à connaître pour faire des modifications dans le squelette :</p>

<terms>
  <item>
    <title>title</title>
    <p>Titre de la page affichée en haut de celle-ci</p>
  </item>
  <item>
    <title>site_name</title>
    <p>Nom du site</p>
  </item>
  <item>
    <title>css</title>
    <p>Le nom du fichier contenant la feuille de style</p>
  </item>
  <item>
    <title>script</title>
    <p>Javascripts utilisés par Au quotidien pour certaines fonctionnalités comme le tri des listes</p>
  </item>
  <item>
    <title>onload</title>
    <p>Instructions en javascript déclenchées lors d'un évènement. Cette variable a vocation à être placée comme valeur de l'attribut onload dans la balise body</p>
  </item>
  <item>
    <title>breadcrumb</title>
    <p>Le fil d'Ariane</p>
  </item>
  <item>
    <title>body</title>
    <p>Contenu principal de la page, habituellement situé entre le titre et le pied de page</p>
  </item>
</terms>

<p>Pour modifier le squelette rendez-vous dans <em>Admin</em>, <em>Paramètres</em> et cliquez sur <em>Squelette</em> dans la partie <em>Personnalisation</em>.</p>

            <figure>
                <media type="image" src="figures/squelette.png" />
            </figure>

<p>Le champ contient le code HTML, avec les variables définit ci-dessus, vous permettant d'éditer depuis l'interface d'administration l'ensemble du squelette. Cliquez sur <em>Valider</em> pour appliquer le nouveau squelette.</p>

<p>Le bouton <em>Restaurer le squelette par défaut</em> vous permet de récupérer le squelette d'origine.</p>

</section>

</page>
