Dotclear

Ticket #855 (closed idea: fixed)

Opened 16 years ago

Last modified 13 years ago

Meilleures pratiques pour codage des blocs

Reported by: bruno Owned by: xave
Priority: normal Milestone:
Component: module:public Version: 2.1
Severity: normal Keywords:
Cc:

Description

Il serait intéressant de vivement recommander une utilisation unique des syntaxes des structures de contrôle, lorsque les plugineurs définissent des blocs.

PHP propose en effet 2 syntaxes pour les structures de contrôle, par exemple le classique if(){} et le if():/endif;

Le fond de ma pensée est de proposer une nouvelle balise de bloc, toute simple, qui génèrerait un "else:" suivi de son contenu. Ce qui permettrait les choses suivantes :

<tpl:CategoryIf [...]>
<!-- code si condition remplie -->
<tpl:else>
<!-- code si condition non remplie -->
</tpl:else>
</tpl:CategoryIf>

Cela ne marcherait que si tout le monde adopte la même syntaxe :)

Change History

comment:1 Changed 16 years ago by Moe

Ça serait bien pratique, je crois que j'avais dû ruser pour faire un else dans un fichier template. Dans ton exemple, c'est normal que le else soit dans le if ?

comment:2 Changed 16 years ago by bruno

Oui, c'est là qu'est la ruse, justement, cela permet de générer facilement un else, pour peu que le if du bloc englobant soit de la forme if: - endif;

tpl:else génère uniquement et exactement " else:".$content et rien d'autre :)

comment:3 Changed 16 years ago by bruno

A la réflexion, on peut même définir {{tpl:else}} avec le même code (uniquement "else:" généré), ça marche pareil :)

comment:4 Changed 15 years ago by xave

Mais c'est quoi la question ? Juste recommander un truc aux thémeurs ou bien ?

comment:5 Changed 15 years ago by bruno

  • Milestone 2.2 deleted

Même pas aux thémeurs, juste aux plugineurs. Mais ça n'a rien a voir avec une version particulière de DC :)

comment:6 Changed 13 years ago by franck <carnet.franck.paul@…>

  • Status changed from new to closed
  • Resolution set to fixed

(In [a52872aaada9]) Add tpl:else tag, fixes #855

Note: See TracTickets for help on using tickets.

Sites map