
| Forum Fermé - Sujet Fermé |
|
|
|
|
Bonsoir à tous, Un petit peu à la bourre, mais voici enfin la partie sur les fonctions. Celles-ci vous permettent d'appeler une partie d'un TPL, comme les fonctions en PHP. Celles-ci prennent des arguments, pour s'afficher... En tant que telles, en fonction de ces même arguments. Il n'y a pas de manip à faire en PHP ; Notez seulement que dans la version 1.1.0, vous ne pouvez que utiliser des variables locales aux fonctions. Déclaration de FonctionsSans ParamètresLa manip est, en fait, plutôt simple :
Code TPL
<function name="ma_fonction">
J'inclue ce bloc dans mon TPL !
</function>
Avec ParamètresEn fait, ici, ca reste plutôt simple. Vous devez renseigner autant de fois l'attribut "arg" de la balise <function> qu'il y a d'arguments :
Code TPL
<function name="pseudo" arg="PSEUDO" arg="ID">
<a href="profile-{ID}.html">{PSEUDO}</a>
</function>
Les variables {} déclarées à l'intérieur des fonctions sont des variables locales, innacessible à l'exterieur des fonctions. Depuis la version 1.2.0, vous pouvez également inclure des TPLs dans des fonctions (quoique ce soit pas conseillé...), et aussi appeler des variables externes, en faisant précéder son nom par le mot clé "GLOB," ... !
Code TPL
<function name="pseudo" arg="PSEUDO" arg="ID">
{GLOB,LG_CONTACT} : <a href="profile-{ID}.html">{PSEUDO}</a>
</function>
/* En dehors : */
{LG_CONTACT}
Comme pour les variables "foreach", si vous souhaitez avoir la variable en elle même (disons pour une condition), vous devez mettre le $... Après le "GLOB,".
Code TPL
<function name="entete_message" arg="ID">
<if cond="{GLOB,$IS_MODO} || {GLOB,$AUTHOR} == {GLOB,$UID}"><a href="edit-{ID}.html">Editer</a></if>
</function>
Appel de fonctionsVous pouvez faire un appel à vos fonctions via la balise <call />, comme suit :
Code TPL
<call name="ma_fonction" />
Comme pour la déclaration, si vous souhaitez donnez des arguments, vous pouvez le faire via l'attribut "arg" :
Code TPL
<call name="pseudo" arg="Talus" arg="1" />
Attention, les valeurs sont forcément considérées comme des chaînes de caractères, sauf pour les nombres et les variables :
Code TPL
<call name="pseudo" arg="{$PSEUDO}" arg="{$ID}" />
Notez un truc ; tous les attributs sont importants (possible de spécifier des chaines vides depuis la version 1.5.0), et doivent être dans l'ordre ! Voilà, je crois que le compte y est ^^ Chapitre Précédent : Les Blocs Dernière édition le 02/10/2008, à 23:55, par Talus Dev' de Talus' Works |
| Forum Fermé - Sujet Fermé |