developer.jelix.org n'est plus utilisée, et existe uniquement pour son historique. Postez les nouveaux tickets sur le compte github.
Opened 14 years ago
Closed 12 years ago
#134 closed bug (fixed)
Pouvoir afficher une constante php dans un template jTpl
Reported by: | bballizlife | Owned by: | |
---|---|---|---|
Priority: | normal | Milestone: | jTpl 1.0 |
Component: | jelix:tpl | Version: | |
Severity: | major | Keywords: | jtpl constant |
Cc: | Blocked By: | ||
Blocking: | Documentation needed: | no | |
Hosting Provider: | Php version: |
Description
Si on veut afficher une constante php dans un template jTpl, la seule solution est d'affecter cette constante à une variable de template puis d'afficher cette variable. Méthode pas propre du tout.
Il faudrait donc pouvoir afficher une constante php dans un template directement.
Actuellement je vois 2 solutions :
- intégrer cette fonctionnalité dans le core de jTpl
- créer un plugin jTpl qui sera livré par défaut, par exemple {const 'CONST_NAME'}
La 2ème solution est peut-être la plus simple à mettre en place profite du système de plugins de jTpl
Change History (6)
comment:1 Changed 14 years ago by bballizlife
comment:2 Changed 14 years ago by laurentj
- Milestone changed from Jelix 1.0beta2 to Jtpl 1.0
- Version 1.0 beta1 deleted
comment:3 Changed 13 years ago by laurentj
- Resolution set to fixed
- Status changed from new to closed
L'utilisation des constantes est autorisé ou non en fonction du nouveau paramètre de sécurité. Donc on peut maintenant affiché une constante comme n'importe quelle variable.
comment:4 Changed 13 years ago by laurentj
- Resolution fixed deleted
- Status changed from closed to reopened
Ticket fermé un peu vite : on ne peut toujours pas afficher uniquement des constantes, bien que l'on puisse les utiliser dans une expression.
comment:5 Changed 13 years ago by Lipki
- Documentation needed unset
Il serait intéressant de pouvoir définir des constante jTpl, pour compléter celle fourni par défaut.
$j_basepath
$j_jelixwww
$j_themepath
$j_datenow
Sous forme d'un plugin coord, les constantes serais ajouter dans le fichier de config du plugin.
comment:6 Changed 12 years ago by laurentj
- Resolution set to fixed
- Status changed from reopened to closed
a "const" plugin has been added into the trunk. svn 1141.
Concernant la solution avec un plugin, voici ce qu'il pourrait donner :
function jtpl_function_const($tpl, $name) { if (defined($name)) { echo constant($name); } }
on définirait une constante quelque part dans le code de l'application :
define('FOO', 'hello world !');
Puis appel dans un template :
Si cette solution convient, je la commit.