Les espaces de noms sont en effet très pratique dans le cadre de regroupement des variables dans de contexte commun.
- Les espaces de nom dans les templates
1. Exemple avec les fonctions set-block et def:
{def $variable='une variable sans namespace'}
{set-block name='mynamespace' variable=$variable}variable avec namespace{/set-block}
variable : {$variable}
variable dans l'espace mynamespace : {$mynamespace:variable}
2. Exemple avec la fonction include
Dans un template principal
{def $main_texte = 'Texte du fichier principal'}
{include uri='design:exemple.tpl' name='test'}
{*Affichage d'une variable définie dans le fichier exemple.tpl*}
{$test:foo}
Dans le fichier exemple.tpl
{*Affichage de la variable $main_texte du fichier principal*}
{$:main_texte}
{*définition d'une variable*}
{def $foo = 'Texte du fichier exemple.tpl'}
- Les espaces de noms dans les vues
Exemple :
$tpl = eZTemplate::factory ();
//pour les versions < 4.3
//$tpl = templateInit ();
$tpl->setVariable( 'nom_variable', 'valeur', 'nom_namespace' );
//pour les versions < 4.3
//$tpl = templateInit ();
$tpl->setVariable( 'nom_variable', 'valeur', 'nom_namespace' );
Il est important de noter que les espaces de noms eZ Publish n'agissent que sur les variables et ne doivent pas faire l'objet de confusion avec la portée (scope) des variables.
Aucun commentaire:
Enregistrer un commentaire