Orion::Template syntax
Pro dnešek jsem si připravil malí úvodní článek o mém PHP frameworku Orion. Tím prvním článkem bude uvod do syntaxe template-u.
Variable
První by uřčitě mela být ukázka definování proměné. Tak tady je:
{VARIABLE}
Syntaxe vložení proměné je velice podobná jako u smarty akorat neobsahuje $
. Dříve byly definovány určité základní proměnné, jako např. den, měsíc, rok atd. Nicméně jsem je po roce odsranil. Důvodem bylo to že jsem je vpodstatě nevyužíval a protože zbytečně zpomalovaly celý script.
If/Else
Dalším pánem na holení je If/Else:
<!-- IF START "CONDITION" -->
<p>OK</p>
<!-- IF END "CONDITION" -->
<!-- ELSE START "CONDITION" -->
<p>KO</p>
<!-- ELSE END "CONDITION" -->
Klauzule Else není povinná. Ale pokud v šabloně existuje tak se použije. Proč jsem nepoužil něco takového?:
<!-- IF START "CONDITION" -->
<p>OK</p>
<!-- ELSE "CONDITION" -->
<p>KO</p>
<!-- IF END "CONDITION" -->
Protože občas potřebuji klauzuli end použíz vnořenou do jiného tagu než ve kterém je klauzule if. A takto by to bylo nemožné.
Include
Další pán na holení je Include:
<!-- INCLUDE "INCLUDE" -->
Jednoduché a funkční.
Form
Dále tu máme Formulář:
<!-- FORM "FORM" -->
Form je v podstatě vložení kódu “Nette::Form”((Dříve NForm)) .
Repeat
A poslední je Repeat (cyklus). První ukázka je nejjednodušší:
<!-- REPEAT START "LOOP" -->
<p>Repeating text</p>
<!-- REPEAT END "LOOP" -->
Složitější verze:
<!-- REPEAT IF START "LOOP" -->
<ul><!-- REPEAT START "LOOP" -->
<li><p>Repeating text</p></li>
<!-- REPEAT END "LOOP" --></ul>
<!-- REPEAT IF END "LOOP" -->
Tady příbyla část Repeat If, což je v podstatě podmínka která dovolí zobrazit HTML tady ul pouze v případě že bude definován alespoň jeden krok cyklu. A nejsložitější verze:
<!-- REPEAT IF START "LOOP" -->
<ul><!-- REPEAT START "LOOP" -->
<li><p>Repeating text</p></li>
<!-- REPEAT END "LOOP" --></ul>
<!-- REPEAT IF END "LOOP" -->
<!-- REPEAT ELSE START "LOOP" -->
<p>No repeating data</p>
<!-- REPEAT ELSE END "LOOP" -->
Zde přibyla další část a tou je Repeat Else, který se zobrazí v případě kdy není definován ani jeden krok cyklu.
Poslední dva příklady jsou pochopiteně nepovinné. Uvnitř repeatu můžete definovat další proménné, if/else a další repeaty(vnořené repeaty – vnořovat jde neomezeně).
Závěr
Závěrem bych jenom dodal že uvnitř úvozovek je vždy udáno ID které musí být schodné s ID v PHP a musí být psáno velkými písmeny(pouze v šabloně). Přoč jsem zvolil pro syntaxy komentáře? protože v případě problému se v podstatě nic neděje.
Máte nějáke nápady na vylepšení nebo jenom nějáký názor? Napište to prosím do komentářů.