29-11-2011 : Remettre dans le débat politique les principes du Conseil National de la Résistance
17-02-2012 : Pétition pour une protection de l’apiculture et des consommateurs face au lobby des OGM
Logo de mon site
Logo de mon site
Faire un don

Luxpopuli / eZ Publish / eZ Publish: Documentation technique / eZ Publish : Les templates / The template language -- Langage des templates





Right menu

Logo du site ez.no  Logo XHTML 1.O du W3C  Logo XHTML 1.O du W3C  Site francophone officiel de Firefox
zero papier grâce aux catalogues et promos en ligne de bonial

The template language -- Langage des templates

Date de publication: le mardi 29 mars 2011 à 20h39
Dernière modification: par Pascal BOYER le lundi 4 avril 2011 à 20h10

Table des matières

  1. The template language -- Langage des templates
  2. Comments -- Commentaires
  3. Variable types -- Types de variables
  4. Variable usage -- Utilisation des variables
  5. Array and object inspection -- Inspection des tableaux et objets
  6. Control structures -- Structures de contrôle
  7. Functions and operators -- Fonctions et opérateurs

28/09/2010 01:30

versions 3.9, 3.10, 4.x

The eZ Publish template language makes it possible to extract information from the system and to solve common programmatic issues like for example conditional branching, looping, etc. All eZ Publish specific code must be placed inside a set of curly brackets, "{" and "}". A template file is a combination of HTML and eZ Publish template code. Everything that is encapsulated by curly brackets will be interpreted by the template parser when the template is processed. Everything outside the curly brackets will be ignored and thus it will be sent to the browser without any changes. 
Le langage de template de eZ Publish permet d'extraire des informations sur le système et de résoudre les principaux problèmes de programmation tel que, par exemple, les branchements conditionnelles, les boucles, etc... Le code spécifique à eZ Publish doit être placé à l'intérieur d'accolades ( "{" et "}" ). Un template est un mélange de HTML et de code de template eZ Publish. Tout ce qui est placé à l'intérieur d'accolades est interprété par le parser de template lorsque le template est traité. A l'inverse, tout ce qui se trouve à l'extérieur des accolades est ignoré et sera envoyé au navigateur sans subir aucun traitement.

Curly bracket issues / A propos des accolades

Since curly brackets are reserved for defining blocks of eZ Publish template code, these characters can not be used directly in a template. For example, Javascript code can not be inserted directly into a template file because it makes an extensive use of curly brackets. All non template specific code/text that uses curly brackets must be put inside a "literal" section. The contents of a literal section will be ignored by the template parser. The following example demonstrates the usage of the literal tags: 
Puisque les accolades sont réservées à la définition de blocs de code de template eZ Publish, elles ne peuvent plus être utilisées directement dans les templates. Par exemple, du code Javascript ne peut pas être directement inséré dans un template dans la mesure où il fait une utilisation intensive d'accolades. Il faut donc que tout code ou texte qui ne soit pas spécifiquement du code ou du texte de template eZ Publish soit inséré à l'intérieur de sections literal. Le contenu de ces sections sera ignoré par le parser de template. L'exemple suivant montre l'utilisation des balises literal:

...
{literal}
<script language="JavaScript" type="text/javascript">
<!--
    window.onload=function()
    {
        document.getElementById( 'sectionName' ).select();
        document.getElementById( 'sectionName' ).focus();
    }
-->
</script>
{/literal}
...

Outputting curly brackets / Afficher des accolades

It is possible to output curly brackets using two template functions called ldelim and rdelim (short for left delimiter and right delimiter). The following example demonstrates the usage of these functions: 
Il est possible d'afficher des accolades en utilisant les deux fonctions ldelim  et rdelim  (raccourcis pour délimiteur gauche et délimiteur droit). L'exemple suivant illustre l'utilisation de ces deux fonctions:

...
This is the left curly bracket: {ldelim} <br />
This is the right curly bracket: {rdelim} <br />
 ...

The following output will be produced 
La sortie suivante sera affichée:

This is the left curly bracket: { 
This is the right curly bracket: }

Commentaires