Tento dokument poskytuje ucelený prehľad syntaxe a sémantiky šablónovacieho systému WEXBO®, ktorý umožňuje vytváranie vlastných šablón s využitím premenných, filtrov, funkcií a zvolených podmienok.
Premenné
Premenné reprezentujú hodnoty položiek, ku ktorým máte prístup (napr. názov položky {title}
, číslo objednávky {order.id}
, cena produktu {product.price}
, atď.). Ich syntax pozostáva zo zložených zátvoriek a samotného názvu premennej, napr. {nazov_premennej}
alebo {variable}
, prípadne {variable.key}
. Názov premennej môže obsahovať len malé abecedné znaky a-z
bez diakritiky, čísla 0-9
, podtržník _
a pre premenné polí aj bodku .
, ktorá slúži ako oddeľovač pre prístup k atribútom premennej, napr. {order.id}
, {order.price}
.
Získanie hodnoty z premennej
Pre lepšiu predstavu nižšie uvádzame ukážku syntaxe pre získanie rôznych hodnôt z rôznych premenných.
- Hodnota premennejBeispiel
{variable}
- Základný syntax pre získanie hodnoty z premennej s názvomvariable
. - Hodnota atribútu premennej
Premenná môže obsahovať viacero vnorených premenných, resp. atribútov.
Beispiel{variable.key}
- Získanie hodnoty z premennej s názvomvariable
, konkrétne hodnoty z jej vnorenej premennej s názvomkey
.Rovnako tak aj vnorená premenná môže obsahovať ďalší atribút.
Beispiel{variable.second_level_variable.last_level_variable}
- Získanie hodnoty z vnorených atribútov premennej s názvomvariable
.
Nastavenie hodnoty do premennej
Premenné je možné aj vytvárať alebo prepisovať ich hodnoty, pričom na to slúži syntax {set nazov_premennej=...}
. Do premennej je možné nastaviť textový reťazec, číslo, pole viacerých hodnôt alebo hodnotu z inej premennej.
- Reťazec alebo text
Samotný textový reťazec, resp. hodnota musí byť uzatvorená v jednoduchých alebo dvojitých úvodzovkách.
Beispiel{set variable='text'}
- Nastavenie textovej hodnotytext
do premennej s názvomvariable
.Beispiel{set variable="text"}
- Nastavenie textovej hodnotytext
do premennej s názvomvariable
. - Celé alebo desatinné číslo
Oddeľovač pri desatinných číslach je nutné zadávať znakom bodky
.
(nie čiarky). Číslo je nutné zadávať v celku bez medzier.Beispiel{set variable=1.5}
- Nastavenie číselnej hodnoty1.5
do premennej s názvomvariable
. - Zoznamy alebo polia
Premennej je možné nastaviť aj zoznam viacerých hodnôt, pričom tento zoznam musí byť uzatvorený v hranatých zátvorkách
[...]
a jednotlivé hodnoty musia byť oddelené čiarkou. Takúto premennú je následne možné použiť s funkciouloop
(viď. odstavecFunkcie
).Beispiel{set variable_list=[0, 1, 2, 3]}
- Nastavenie viacerých hodnôt (poľa) do premennej s názvomvariable_list
. - Iná premenná
Premennej je možné nastaviť aj hodnotu z inej premennej, pričom v tomto prípade sa zadáva názov inej premennej.
Beispiel{set variable_new=variable_old}
- Nastavenie hodnoty z inej premennej s názvomvariable_old
do premennej s názvomvariable_new
.Beispiel{set variable=variable_list.0}
- Nastavenie hodnoty z inej premennej s názvomvariable_list
, konkrétne z prvého prvku poľa (index alebo kľúč0
), do premennej s názvomvariable
.Beispiel{set variable=variable_list.1}
- Nastavenie hodnoty z inej premennej s názvomvariable_list
, konkrétne z druhého prvku poľa (index alebo kľúč1
), do premennej s názvomvariable
.
Zakázané názvy premenných
Niektoré systémové výrazy nie je možné použiť ako názvy premenných, pričom tieto výrazy sa používajú ako funkcie šablónovacieho systému. Nie je možné použiť nasledovné výrazy: set
, math
, lng
, if
, elseif
, else
, loop
, value
, key
, counter
, continue
, break
, TRUE
, FALSE
.
Premenné prekladov
Použiť je možné aj výraz zo sekcie Einstellungen / Übersetzungen a to tak, že použijete premennú lng
, za ktorou použijete ID prekladu oddelené znakom bodky .
.
{lng.abox_orders}
- Zobrazenie prekladu výrazu Objednávka
.Filtre
Filtre upravujú hodnotu premennej na novú hodnotu, pričom hodnota v pôvodnej premennej zostane nezmenená. Aplikujú sa za samotný názvom premennej s oddeľovačom, ktorým je znak zvislej čiary |
, tj. napr. {variable|nazov_filtra}
.
Parametre filtrov
Pre niektoré filtre je možné použiť nepovinné parametre alebo naopak niektoré filtre vyžadujú použitie povinných parametrov. Parametre sa uvádzajú za názvom filtra a oddeľujú sa znakom dvojbodky :
, napr. {variable|filter:parameter}
. V prípade, že v hodnote parametra potrebujete použiť dvojbodku alebo úvodzovku, je nutné danú hodnotu zapuzdriť do jednoduchých úvodzoviek, napr. {variabile|replace:':':-}
(nahraď dvojbodku pomlčkou).
Viacnásobné filtre
Použiť je možné aj syntax viacerých filtrov za sebou, napr. {variable|small|cut:0:10}
(zmeň všetky písmená na malé a následne orež reťazec na maximálne 10 znakov).
Filtre pre reťazce a text
- big
Zmení všetky písmená na veľké (bez diakritiky).
Syntax filtra je nasledovný
{...|big}
.Filter neobsahuje doplnkové parametre.
Beispiel{set name='john'}
- Pre premennú s názvomname
sme nastavili hodnotujohn
.{name|big}
- Zobrazenie hodnoty premennej s názvomname
, ktorá bude prekonvertovaná na veľké znaky, tj.JOHN
. - small
Zmení všetky písmená na veľké (bez diakritiky).
Syntax filtra je nasledovný
{...|small}
.Filter neobsahuje doplnkové parametre.
Beispiel{set name='JOHN'}
- Pre premennú s názvomname
sme nastavili hodnotuJOHN
.{name|small}
- Zobrazenie hodnoty premennej s názvomname
, ktorá bude prekonvertovaná na malé znaky, tj.john
. - bigfirst
Zmení prvé písmeno na veľké (bez diakritiky).
Syntax filtra je nasledovný
{...|bigfirst}
.Filter neobsahuje doplnkové parametre.
Beispiel{set name='john'}
- Pre premennú s názvomname
sme nastavili hodnotujohn
.{name|bigfirst}
- Zobrazenie hodnoty premennej s názvomname
, ktorej prvé písmeno hodnoty bude prekonvertované na veľký znak, tj.John
. - smallfirst
Zmení prvé písmeno na malé (bez diakritiky).
Syntax filtra je nasledovný
{...|smallfirst}
.Filter neobsahuje doplnkové parametre.
Beispiel{set name='John'}
- Pre premennú s názvomname
sme nastavili hodnotuJohn
.{name|smallfirst}
- Zobrazenie hodnoty premennej s názvomname
, ktorej prvé písmeno hodnoty bude prekonvertované na malý znak, tj.john
. - reverse
Otočí celý reťazec.
Syntax filtra je nasledovný
{...|reverse}
.Filter neobsahuje doplnkové parametre.
Beispiel{set variable='abcd'}
- Pre premennú s názvomvariable
sme nastavili hodnotuabcd
.{variable|reverse}
- Zobrazenie hodnoty premennej s názvomvariable
, ktorej hodnota bude otočená tj.dcba
. - replace
Nahradenie reťazca iným reťazcom.
Syntax filtra je nasledovný
{...|replace:find:string}
.Filter obsahuje dva povinné parametre
find
pre hľadaný reťazec astring
pre reťazec, ktorým sa hľadaný reťazec nahradí.Beispiel{set variable='Hello John'}
- Pre premennú s názvomvariable
sme nastavili hodnotuHello John
.{variable|replace:John:Anna}
- Zobrazenie hodnoty premennej s názvomvariable
, v ktorej hodnote sa vyhľadá reťazecJohn
, ktorý bude nahradený reťazcomAnna
, pričom výslednou hodnotou budeHello Anna
. - find
Vyhľadanie požadovaného znaku alebo výrazu a vrátenie začiatočnej pozície hľadaného výrazu v rámci premennej.
Syntax filtra je nasledovný
{...|find:string}
.Filter obsahuje povinný doplnkový parameter
string
kde je nutné zadať hľadaný znak alebo reťazec.Beispiel{variable|find:world}
- pad
Doplní reťazec zadaným znakom na zadanú dĺžku.
Syntax filtra je nasledovný
{...|pad:length:string:type}
.Filter obsahuje dva povinné parametre
length
pre dĺžku výsledného reťazeca astring
pre znak, ktorým sa doplní reťazec pre požadovanú dĺžku. Filter taktiež obsahuje jeden nepovinný parametertype
, ktorý môže obsahovať len hodnotyleft
(predvolená hodnota) aleboright
, ktoré určujú, na ktorú stranu reťazca sa bude dopĺňať zadaný znak.Beispiel{set variable='1'}
- Pre premennú s názvomvariable
sme nastavili hodnotu1
.{variable|pad:3:0}
- Zobrazenie hodnoty premennej s názvomvariable
, v ktorej hodnote sa doplní znak0
na začiatok reťazca1
, pričom výslednou hodnotou bude001
s dĺžkou 3 znaky. - length
Vráti dĺžku reťazca.
Syntax filtra je nasledovný
{...|length}
.Filter neobsahuje doplnkové parametre.
Beispiel{set variable='Hello John'}
- Pre premennú s názvomvariable
sme nastavili hodnotuHello John
.{variable|length}
- Zobrazenie dĺžky hodnoty premennej s názvomvariable
, pričom výslednou hodnotou bude10
. - br
Nahradí nové riadky HTML tagom
<br>
.Syntax filtra je nasledovný
{...|br}
.Filter neobsahuje doplnkové parametre.
Beispiel{set variable='1. riadok 2. riadok'}
- Pre premennú s názvomvariable
sme nastavili hodnotu1. riadok 2. riadok
.{variable|br}
- Zobrazenie hodnoty premennej s názvomvariable
, pričom nové riadky budú nahradené HTML tagom<br>
, tj. výslednou hodnotou bude1. riadok<br>2. riadok
. - url
Zakóduje reťazec pre URL adresu.
Syntax filtra je nasledovný
{...|url}
.Filter neobsahuje doplnkové parametre.
Beispiel{set variable='Hello John'}
- Pre premennú s názvomvariable
sme nastavili hodnotuHello John
.{variable|url}
- Zobrazenie hodnoty premennej s názvomvariable
, pričom výsledná hodnota bude upravená pre použitie v URL adrese naHello%20John
. - repeat
Opakuje reťazec zadaný počet krát.
Syntax filtra je nasledovný
{...|repeat:number}
.Filter obsahuje povinný doplnkový parametre
number
, ktorý musí byť kladným celým číslom určujúcim počet opakovaní.Beispiel{set name='John'}
- Pre premennú s názvomname
sme nastavili hodnotuJohn
.{name|repeat:3}
- Zobrazenie hodnoty premennej s názvomvariable
, pričom výsledná hodnota bude 3 krát zopakovaná naJohnJohnJohn
. - nohtml
Odstráni z reťazca HTML tagy.
Syntax filtra je nasledovný
{...|nohtml}
.Filter neobsahuje doplnkové parametre.
Beispiel{set variable='<h1>Nadpis</h1>'}
- Pre premennú s názvomvariable
sme nastavili hodnotu<h1>Nadpis</h1>
.{variable|nohtml}
- Zobrazenie hodnoty premennej s názvomvariable
, pričom v reťazci budú odstránené HTML tagy a tak výsledná hodnota budeNadpis
. - cut
Vráti časť reťazca.
Syntax filtra je nasledovný
{...|cut:from:length}
.Filter obsahuje dva povinné doplnkové parametre
from
pre určenie poradia znaku, od ktorého sa má začať orezanie reťazca alength
pre určenie dĺžky znakov, ktoré sa majú orezať.Beispiel{set variable='Dlhý text článku'}
- Pre premennú s názvomvariable
sme nastavili hodnotuDlhý text článku
.{variable|cut:0:10}
- Zobrazenie hodnoty premennej s názvomvariable
, pričom reťazec bude orezaný na prvých 10 znakov, tak výsledná hodnota budeDlhý text
. - trim
Odstráni zbytočné znaky zo začiatku a konca reťazca.
Syntax filtra je nasledovný
{...|trim:type:string}
.Filter obsahuje dva nepovinné parametre. Jedným z nepovinných parametrov je
type
, ktorý môže mať len hodnotuboth
(z oboch strán),left
(z ľavej strany) aleboright
(z pravej strany) určujúce stranu reťazca, z ktorej sa majú odstrániť zbytočné znaky. Druhým nepovinným parametrom jestring
kde je možné zadať práve zoznam znakov (bez oddeľovača), ktoré sa majú odstrániť (predvolene sú to tzv. prázdne znaky ako medzery, tabulátory a nové riadky).Beispiel{set variable='Text s medzerou na konci '}
- Pre premennú s názvomvariable
sme nastavili hodnotuText s medzerou na konci
.{variable|trim}
- Zobrazenie hodnoty premennej s názvomvariable
, pričom z reťazca bude odstránená medzera na konci, a tak výsledná hodnota budeText s medzerou na konci
.Beispiel{variable|trim}
- html
Ošetrenie špeciálnych znakov jazyka HTML.
Syntax filtra je nasledovný
{...|html}
.Filter neobsahuje doplnkové parametre.
Beispiel{set variable='<b>John & Anna</b>'}
- Pre premennú s názvomvariable
sme nastavili hodnotu<b>John & Anna</b>
.{variable|html}
- Zobrazenie hodnoty premennej s názvomvariable
, pričom v reťazci budú ošetrený začiatočný a konečný HTML tagB
(tučné písmo) a znak&
(ampersand). Výsledná hodnota tak bude<b>John & Anna</b>
. - xml
Ošetrenie špeciálnych znakov jazyka XML.
Syntax filtra je nasledovný
{...|xml}
.Filter neobsahuje doplnkové parametre.
Beispiel{set variable='<b>John & Anna</b>'}
- Pre premennú s názvomvariable
sme nastavili hodnotu<b>John & Anna</b>
.{variable|xml}
- Zobrazenie hodnoty premennej s názvomvariable
, pričom v reťazci budú ošetrený začiatočný a konečný HTML tagB
(tučné písmo) a znak&
(ampersand). Výsledná hodnota tak bude<b>John & Anna</b>
.
Filtre pre celé a desatinné čísla
- number
Formátuje číslo.
Syntax filtra je nasledovný
{...|number:decimals:decimal_separator:thousands_separator}
.Filter neobsahuje 3 nepovinné doplnkové parametre, a to
decimals
pre zadanie počtu desatinných miest (predvolene0
),decimal_separator
pre znak, ktorý bude oddeľovať desatinné čísla (predvolene čiarka,
) athousands_separator
pre znak, ktorý bude oddeľovať tisícky (predvolene medzeraBeispiel{set variable=3000.025}
- Pre premennú s názvomvariable
sme nastavili číselnú hodnotu3000.025
.{variable|number:2:,: }
- Zobrazenie hodnoty premennej s názvomvariable
, pričom výsledná hodnota bude formátovaná do podoby3 000,02
, tj. zobrazia sa len dve desatinné čísla (bez zaokrúhlenia), desatinné číslo bude oddeľovať čiarka tisícky bude oddeľovať medzera. - round
Zaokrúhli číslo na zadaný počet desatinných miest.
Syntax filtra je nasledovný
{...|round:number:type}
.Filter obsahuje dva nepovinné doplnkové parametre, a to
number
počet desatinných miest zaokrúhlenia (predvolene0
) atype
, ktorý môže obsahovať len hodnotyboth
(predvolené matematické zaokrúhlenie),up
(zaokrúhlenie smerom nahor),down
(zaokrúhlenia smerom nadol) určujúci typ zaokrúhlenia.Beispiel{set variable=3000.025}
- Pre premennú s názvomvariable
sme nastavili číselnú hodnotu3000.025
.{variable|round:2}
- Zobrazenie hodnoty premennej s názvomvariable
, pričom hodnota bude zaokrúhlená na 2 desatinné miesta matematickým zaokrúhľovaním, a výsledná hodnota tak bude3000,03
. - abs
Vráti absolútnu hodnotu čísla.
Syntax filtra je nasledovný
{...|abs}
.Filter neobsahuje doplnkové parametre.
Beispiel{set variable=-3000.025}
- Pre premennú s názvomvariable
sme nastavili zápornú číselnú hodnotu-3000.025
.{variable|abs}
- Zobrazenie hodnoty premennej s názvomvariable
, pričom výsledná hodnota bude kladné číslo3000,025
. - min
Vráti menšiu z dvoch hodnôt.
Syntax filtra je nasledovný
{...|min:number}
.Filter obsahuje povinný doplnkový parameter
number
, kde je nutné zadať číslo (resp. druhú hodnotu), s ktorým chcete porovnať pôvodnú hodnotu.Beispiel{set variable=5}
- Pre premennú s názvomvariable
sme nastavili číselnú hodnotu5
.{variable|min:10}
- Zobrazenie hodnoty premennej s názvomvariable
, pričom sa tak porovnajú hodnoty5
a10
a výsledná hodnota tak bude5
, keďže je menšia ako10
. - max
Vráti väčšiu z dvoch hodnôt.
Syntax filtra je nasledovný
{...|max:number}
.Filter obsahuje povinný doplnkový parameter
number
, kde je nutné zadať číslo (resp. druhú hodnotu), s ktorým chcete porovnať pôvodnú hodnotu.Beispiel{set variable=5}
- Pre premennú s názvomvariable
sme nastavili číselnú hodnotu5
.{variable|max:10}
- Zobrazenie hodnoty premennej s názvomvariable
, pričom sa tak porovnajú hodnoty5
a10
a výsledná hodnota tak bude10
, keďže je väčšia ako5
.
Filtre pre dátum a čas
Filtre slúžia pre úpravu dátumu a času, prípadne pre prácu s časom.
- date
Formátuje dátum a čas. Zadaná variabilná hodnota musí byť predtým prekonvertovaná na počet sekúnd od epochy Unixu (1. január 1970 00:00:00 GMT) práve filtrom
time
.Syntax filtra je nasledovný
{...|date:format}
.Filter obsahuje povinný doplnkový parameter
format
pre zadanie formátu rokov, mesiacov, týždňov, dní, hodín, minút a sekúnd. Ak budete chcieť použiť dvojbodku je nutné formát zapuzdriť do jednoduchých úvodzoviek (viď. príklad).Znak Príklad Popis d
01
-31
Deň v mesiaci s úvodnými nulami. j
1
-31
Deň v mesiaci bez úvodných núl. l
Sunday
-Saturday
Textové znázornenie dňa v týždni v angličtine. N
1
-7
Číselné znázornenie dňa v týždni ( 1
- pondelok,7
- nedeľa).w
0
-6
Číselné znázornenie dňa v týždni ( 0
- nedeľa,6
- pondelok).z
0
-365
Deň v roku (od 0). W
1
-53
Týždeň v roku. F
January
-December
Textové znázornenie mesiaca v roku v angličtine. m
01
-12
Číselné znázornenie mesiaca s úvodnými nulami. n
1
-12
Číselné znázornenie mesiaca bez úvodných núl. t
28
-31
Počet dní v danom mesiaci. Y
1950
-2050
4 číselné znázornenie roka. y
00
-99
2 číselné znázornenie roka. h
01
-12
12-hodinový formát hodiny s úvodnými nulami. g
1
-12
12-hodinový formát hodiny bez úvodných núl. H
00
-23
24-hodinový formát hodiny s úvodnými nulami. G
0
-23
24-hodinový formát hodiny bez úvodných núl. i
00
-59
Minúty s úvodnými nulami. s
00
-59
Sekundy s úvodnými nulami. c
2025-02-28T16:58:21+00:00
Dátum vo formáte ISO 8601. U
napr. 1738641169
Počet sekúnd od epochy Unixu (1. január 1970 00:00:00 GMT). Beispiel{set variable=1767221999}
- Pre premennú s názvomvariable
sme nastavili číselnú hodnotu1767221999
.{variable|date:'j.n.Y H:i:s'}
- Výsledkom bude dátum a čas vo formáte31.12.2025 23:59:59
. - time
Zmení dátum alebo dátum s časom na počet sekúnd od epochy Unixu (1. január 1970 00:00:00 GMT) pre jednoduchšie porovnávanie. Zadaná variabilná hodnota musí obsahovať buď samotný dátum v tvare
YYYY-MM-DD
tj.2025-12-31
alebo sa musí jednať o dátum s časom vo formáteYYYY-MM-DD HH:MM:SS
tj.2025-12-31 23:59:59
.Syntax filtra je nasledovný
{...|time}
.Filter neobsahuje doplnkové parametre.
Beispiel{set variable='2025-12-31 23:59:59'}
- Pre premennú s názvomvariable
sme nastavili hodnotu2025-12-31 23:59:59
.{variable|time}
- Výsledkom bude číselná hodnota1767221999
.
Filtre pre polia a zoznamy
Filtre je možné používať len pre premenné typu zoznam či polia, alebo pre vytvorenie premennej typu zoznam či polia.
- count
Vráti počet prvkov v poli.
Syntax filtra je nasledovný
{...|count}
.Filter neobsahuje doplnkové parametre.
Beispiel{set variable=['red', 'green', 'blue', 'pink']}
- Pre premennú s názvomvariable
sme nastavili zoznam hodnôtred
,green
,blue
,pink
.{variable|count}
- Výsledkom bude číslo4
, keďže premenná s názvomvariable
obsahuje zoznam s práve 4 prvkami. - join
Spojí prvky poľa do reťazca s daným oddeľovačom.
Syntax filtra je nasledovný
{...|join:string}
.Filter obsahuje povinný doplnkový parameter
string
pre zadanie znaku alebo textového reťazca, ktorý bude samotným spojovníkom.Beispiel{set variable=['red', 'green', 'blue', 'pink']}
- Pre premennú s názvomvariable
sme nastavili zoznam hodnôtred
,green
,blue
,pink
.{variable|join:,}
- Výsledkom bude reťazecred,green,blue,pink
, teda zoznam prvkov z premennej s názvomvariable
oddelený znakom čiarky,
. - split
Rozdelí reťazec na pole podľa oddeľovača.
Syntax filtra je nasledovný
{...|split:string}
.Filter obsahuje povinný doplnkový parameter
string
pre zadanie znaku alebo textového reťazca, ktorý bude samotným rozdeľovačom.Beispiel{set variable='red,green,blue,pink'}
- Pre premennú s názvomvariable
sme nastavili reťazecred,green,blue,pink
.{variable|split:,}
- Výsledkom bude zoznam prvkov['red', 'green', 'blue', 'pink']
, ktorý sa vytvoril z reťazca z premennej s názvomvariable
rozdelením znakom čiarky,
. - json
Konvertuje premennú typu polia alebo zoznam do formátu JSON.
Syntax filtra je nasledovný
{...|json}
.Filter neobsahuje doplnkové parametre.
Beispiel{set variable=['red', 'green', 'blue', 'pink']}
- Pre premennú s názvomvariable
sme nastavili zoznam hodnôtred
,green
,blue
,pink
.{variable|json}
- Výsledkom bude reťazec zoznamu prvkov vo formáte JSON['red', 'green', 'blue', 'pink']
. - list
Rozdelí reťazec na pole podľa oddeľovača.
Syntax filtra je nasledovný
{...|list}
.Filter neobsahuje doplnkové parametre.
Beispiel{set variable='[1,2,3,4]'}
- Pre premennú s názvomvariable
sme nastavili JSON zoznam vo forme reťazca[1,2,3,4]
.{variable|list}
- Výsledkom bude zoznam prvkov[1, 2, 3, 4]
, ktorý sa vytvoril z reťazca z premennej s názvomvariable
.
Filtre pre overenie
Tieto filtre slúžia na overenie typu alebo hodnoty premennej a vracajú len boolean hodnotu TRUE
ak je to pravda alebo FALSE
ak to to naopak pravda nie je.
V prípade overovacích filtrov je možné použiť negáciu, ktorá výslednú boolean hodnotu otočí, teda TRUE
bude FALSE
a naopak FALSE
bude TRUE
. Používa sa ak napríklad chcete vedieť či premenná nie je číslom {variable|!number}
alebo či sa v premennej nenachádza nejaký výraz {variable|!match:'test'}
. Pre využitie negácie stačí pred názvom filtra zadať znak výkričníka !
, tj. syntax filtra bude {...|!filter}
.
- match
Overí, či premenná zodpovedá zadanému regulárnemu výrazu alebo reťazcu.
Syntax filtra je nasledovný
{...|match:regexp}
.Filter obsahuje povinný doplnkový parameter s názvom
regexp
kde je nutné zadať hľadaný výraz vo formáte regulárneho výrazu.Beispiel{set variable='Hello world'}
- Pre premennú s názvomvariable
sme nastavili reťazecHello world
.{variable|match:^Hello}
- Výsledkom bude boolean hodnotaTRUE
.{variable|match:^world}
- Výsledkom bude boolean hodnotaFALSE
.{variable|match:world}
- Výsledkom bude boolean hodnotaTRUE
. - value
Overí, či sa v premennej typu polia alebo zoznam nachádza prvok s hodnotu, ktorá sa rovná zadanému reťazcu.
Syntax filtra je nasledovný
{...|value:string}
.Filter obsahuje povinný doplnkový parameter s názvom
string
kde je nutné zadať hľadanú hodnotu jedného z prvkov so zoznamu premennej.Beispiel{set variable=['red', 'green', 'blue']}
- Pre premennú s názvomvariable
sme nastavili pole s položkamired
,green
,blue
.{variable|value:red}
- Výsledkom bude boolean hodnotaTRUE
.{variable|value:pink}
- Výsledkom bude boolean hodnotaFALSE
. - key
Overí, či sa v premennej typu polia alebo zoznam nachádza prvok s kľúčom, ktorý sa rovná zadanému reťazcu.
Syntax filtra je nasledovný
{...|key:string}
.Filter obsahuje povinný doplnkový parameter s názvom
string
kde je nutné zadať hľadanú kľúč jedného z prvkov so zoznamu premennej.Beispiel{set variable=['red', 'green', 'blue']}
- Pre premennú s názvomvariable
sme nastavili pole s položkamired
,green
,blue
.{variable|key:0}
- Výsledkom bude boolean hodnotaTRUE
.{variable|key:2}
- Výsledkom bude boolean hodnotaTRUE
.{variable|key:3}
- Výsledkom bude boolean hodnotaFALSE
.{variable|key:test}
- Výsledkom bude boolean hodnotaFALSE
. - numeric
Overí, či je premenná číselná.
Syntax filtra je nasledovný
{...|numeric}
.Filter neobsahuje doplnkové parametre.
Beispiel{set variable=100.5}
- Pre premennú s názvomvariable
sme nastavili číselnú hodnotu100.5
.{variable|numeric}
- Výsledkom bude boolean hodnotaTRUE
.Beispiel{set variable='100,5'}
{variable|numeric}
- Výsledkom bude boolean hodnotaFALSE
, keďže hodnota premennej obsahuje čiarku. - integer
Overí, či je premenná celé číslo.
Syntax filtra je nasledovný
{...|integer}
.Filter neobsahuje doplnkové parametre.
Beispiel{set variable=10}
- Pre premennú s názvomvariable
sme nastavili číselnú hodnotu10
.{variable|integer}
- Výsledkom bude boolean hodnotaTRUE
.Beispiel{set variable=10.5}
- Pre premennú s názvomvariable
sme nastavili číselnú hodnotu10.5
.{variable|integer}
- Výsledkom bude boolean hodnotaFALSE
. - float
Overí, či je premenná desatinné číslo.
Syntax filtra je nasledovný
{...|float}
.Filter neobsahuje doplnkové parametre.
Beispiel{set variable=1.5}
- Pre premennú s názvomvariable
sme nastavili číselnú hodnotu1.5
.{variable|float}
- Výsledkom bude boolean hodnotaTRUE
. - string
Overí, či je premenná reťazec alebo text.
Syntax filtra je nasledovný
{...|string}
.Filter neobsahuje doplnkové parametre.
Beispiel{set variable='green'}
- Pre premennú s názvomvariable
sme nastavili hodnotugreen
.{variable|string}
- Výsledkom bude boolean hodnotaTRUE
.Beispiel{set variable=10}
- Pre premennú s názvomvariable
sme nastavili číselnú hodnotu10
.{variable|string}
- Výsledkom bude boolean hodnotaFALSE
. - bool
Overí, či je premenná boolean, teda buď
TRUE
aleboFALSE
.Syntax filtra je nasledovný
{...|bool}
.Filter neobsahuje doplnkové parametre.
Beispiel{set variable=TRUE}
- Pre premennú s názvomvariable
sme nastavili boolean hodnotuTRUE
.{variable|bool}
- Výsledkom bude boolean hodnotaTRUE
.Beispiel{set variable='true'}
- Pre premennú s názvomvariable
sme nastavili textovú hodnotutrue
.{variable|bool}
- Výsledkom bude boolean hodnotaFALSE
, keďže hodnota premennej je reťazectrue
. - object
Overí, či je premenná objekt (aktuálne nepodporované).
Syntax filtra je nasledovný
{...|object}
.Filter neobsahuje doplnkové parametre.
Beispiel{set variable={'color':'red', 'size': 42}}
- Pre premennú s názvomvariable
sme nastavili objekt s viacerými poliami a priradenými hodnotami.{variable|object}
- Výsledkom bude boolean hodnotaTRUE
. - array
Overí, či je premenná pole alebo zoznam prvkov.
Syntax filtra je nasledovný
{...|array}
.Filter neobsahuje doplnkové parametre.
Beispiel{set variable=[1, 2, 3]}
- Pre premennú s názvomvariable
sme nastavili pole s položkami1
,2
,3
.{variable|array}
- Výsledkom bude boolean hodnotaTRUE
.Beispiel{set variable='1,2,3'}
- Pre premennú s názvomvariable
sme nastavili textovú hodnotu1,2,3
.{variable|array}
- Výsledkom bude boolean hodnotaFALSE
, keďže hodnota premennej je reťazec. - empty
Overí, či je premenná prázdna, teda či má nastavenú prázdnu alebo nulovú hodnotu, prípadne boolean hodnotu
FALSE
.Syntax filtra je nasledovný
{...|empty}
.Filter neobsahuje doplnkové parametre.
Beispiel{set variable=0}
- Pre premennú s názvomvariable
sme nastavili číselnú hodnotu0
.{variable|empty}
- Výsledkom bude boolean hodnotaTRUE
.Beispiel{set variable=''}
- Pre premennú s názvomvariable
sme nastavili prázdnu hodnotu{variable|empty}
- Výsledkom bude boolean hodnotaTRUE
.Beispiel{set variable=1}
- Pre premennú s názvomvariable
sme nastavili číselnú hodnotu1
.{variable|empty}
- Výsledkom bude boolean hodnotaFALSE
.Beispiel{set variable='red'}
- Pre premennú s názvomvariable
sme nastavili textovú hodnotured
.{variable|empty}
- Výsledkom bude boolean hodnotaFALSE
. - full
Overí, či premenná nie je prázdna, teda či ma nastavenú nejakú hodnotu alebo nie nulovú hodnotu, prípadne boolean hodnotu
TRUE
.Syntax filtra je nasledovný
{...|full}
.Filter neobsahuje doplnkové parametre.
Beispiel{set variable=1}
- Pre premennú s názvomvariable
sme nastavili číselnú hodnotu1
.{variable|full}
- Výsledkom bude boolean hodnotaTRUE
.Beispiel{set variable='red'}
- Pre premennú s názvomvariable
sme nastavili textovú hodnotured
.{variable|full}
- Výsledkom bude boolean hodnotaTRUE
.Beispiel{set variable=0}
- Pre premennú s názvomvariable
sme nastavili číselnú hodnotu0
.{variable|full}
- Výsledkom bude boolean hodnotaFALSE
.Beispiel{set variable=''}
- Pre premennú s názvomvariable
sme nastavili prázdnu hodnotu{variable|full}
- Výsledkom bude boolean hodnotaFALSE
. - set
Overí, či je premenná nastavená, teda či existuje.
Syntax filtra je nasledovný
{...|set}
.Filter neobsahuje doplnkové parametre.
Beispiel{set variable=1}
- Pre premennú s názvomvariable
sme nastavili číselnú hodnotu1
.{variable|set}
- Výsledkom bude boolean hodnotaTRUE
.Beispiel{variable|set}
- Výsledkom bude boolean hodnotaFALSE
, keďže premenná s názvomvariable
nebola vyššie nastavená. - null
Overí, či je premenná null.
Syntax filtra je nasledovný
{...|null}
.Filter neobsahuje doplnkové parametre.
Beispiel{set variable=NULL}
- Pre premennú s názvomvariable
sme nastavili prázdnu hodnotuNULL
.{variable|null}
- Výsledkom bude boolean hodnotaTRUE
. - true
Overí, či je premenná true.
Syntax filtra je nasledovný
{...|true}
.Filter neobsahuje doplnkové parametre.
Beispiel{set variable=TRUE}
- Pre premennú s názvomvariable
sme nastavili boolean hodnotuTRUE
.{variable|true}
- Výsledkom bude boolean hodnotaTRUE
.Beispiel{set variable=FALSE}
- Pre premennú s názvomvariable
sme nastavili boolean hodnotuFALSE
.{variable|true}
- Výsledkom bude boolean hodnotaFALSE
. - false
Overí, či je premenná false.
Syntax filtra je nasledovný
{...|false}
.Filter neobsahuje doplnkové parametre.
Beispiel{set variable=FALSE}
- Pre premennú s názvomvariable
sme nastavili boolean hodnotuFALSE
.{variable|false}
- Výsledkom bude boolean hodnotaTRUE
.Beispiel{set variable=TRUE}
- Pre premennú s názvomvariable
sme nastavili boolean hodnotuTRUE
.{variable|false}
- Výsledkom bude boolean hodnotaFALSE
.
Ostatné filtre
- log
Zobrazí hodnotu premennej v logu (pre účely ladenia).
Syntax filtra je nasledovný
{...|log}
.Filter neobsahuje doplnkové parametre.
Beispiel{variable|log}
Funkcia podmienky
Základom šablónovacieho systému je používanie podmienok, kedy sa má alebo naopak nemá niečo zobraziť či vykonať.
Syntax
Syntax funkcie je nasledovný {if condition}
... {if}
alebo {if condition}
... {elseif condition}
... {if}
alebo {if condition}
... {else}
... {if}
. Syntax teda začína zadaním výrazu {if ...}
, ktorý bude obsahovať jednotlivé podmienky (v syntaxe nazvané condition
), následne použijete požadovaný kód, ktorý sa vykoná ak bude vyhovovať zadaným podmienkam, a nakoniec podmienku ukončíte výrazom {if}
. V obsahu podmienky je možné použiť ďalšie vnorené podmienky, prípadne použiť viacero podmienok použitím výrazu {elseif ...}
. Taktiež je možné na koniec obsahu podmienky použiť aj výraz {else}
, ktorý bude obsahovať kód, ktorý sa spracuje ak vyššie zadaným podmienkam nič nevyhovovalo.
Podmienka
Podmienka (v syntaxe nazvané condition
) sa skladá z hodnôt a operátorov porovnávajúcich dané hodnoty, pričom výsledkom musí byť vždy boolean hodnota TRUE
(vyhovujúca podmienka) alebo FALSE
(nevyhovujúca podmienka).
Hodnoty podmienok
Hodnoty môžu obsahovať názvy premenných prípadne aj s filtrami bez použitia zložených zátvoriek, reťazce alebo text zadaný v jednoduchých úvodzovkách, celé a desatinné čísla, alebo boolean hodnoty TRUE
alebo FALSE
.
Operátori podmienok
Podmienka obsahujúca dve hodnoty môže obsahovať operátory ==
(rovná sa), !=
(nerovná sa), >
(je väčšie), >=
(je väčšie alebo rovné), <
(je menšie), <=
(je menšie alebo rovné), ===
(striktné typové rovná sa).
Viaceré podmienky
Viaceré podmienky je možné oddeliť operátorom &&
(AND) alebo operátorom ||
(OR).
Príklady
Nepravda
keďže hodnota v premennej s názvom price
nie je väčšia alebo rovná ako hodnota v podmienke tj. 100
.{set price=50}
{if price >= 100}
Pravda{else}
Nepravda{if}
Tráva je zelená
keďže hodnota v premennej s názvom trava
je rovnaká ako hodnota v druhej podmienke tj. green
.{set trava='green'}
{if trava == 'red'}
Tráva je červená{elseif trava == 'green'}
Tráva je zelená{else}
Tráva má neznámu farbu{if}
Je to farba trávy
keďže hodnota v premennej s názvom trava
je rovnaká ako hodnota jednej z podmienok tj. yellow
.{set trava='yellow'}
{if trava == 'green' || trava == 'yellow'}
Je to farba trávy{else}
Nie je to farba trávy{if}
Pravda
keďže hodnota v premennej s názvom price
nie je v oboch podmienkach prázdna, a teda je TRUE
, prípadne je v tretej podmienke väčšia ako 0
.{set price=50}
{if price|full}
Pravda{else}
Nepravda{if}
{if price|full === TRUE}
Pravda{else}
Nepravda{if}
{if price > 0}
Pravda{else}
Nepravda{if}
Funkcia cyklu alebo slučky
Postupne bude zo zadanej premennej typu polia či zoznam načítavať jednotlivé prvky, s ktorými je následne možné pracovať.
Syntax
Syntax funkcie je nasledovný {loop nazov_premennej} ... {loop}
. Syntax teda začína zadaním výrazu {loop ...}
s názvom premennej, ktorú chcete načítať, pričom následne je možné vložiť požadovaný kód pre prácou s jednotlivými prvkami, a nakoniec je nutné slučku vždy nutné ukončiť výrazom {loop}
.
Systémové premenné
V samotnej slučke je následne možné použiť nižšie uvedené systémové premenné.
{value}
- Vypíše hodnotu aktuálneho prvku v rámci slučky. Jedná sa o predvolený názov premennej aktuálneho prvku v rámci slučky.{key}
- Vypíše poradové číslo (začínajúce nulou), identifikátor alebo kľúč aktuálneho prvku v rámci slučky.{counter}
- Vypíše aktuálne číslo iterácie v rámci slučky. Napr.1
,2
,3
, atď.{continue}
- Preskočí aktuálnu iteráciu v rámci slučky, teda všetok kód v rámci slučky sa za touto systémovou premennou už nespracuje.{break}
- Ukončí cyklus slučky, pričom ďalšie prvky v rámci slučky sa už nespracujú.
Príklady
{set list=['red', 'green', 'blue']}
- Pre premennú s názvom list
sme nastavili zoznam hodnôt red
, green
, blue
.
{loop list}
- Začiatok slučky s premennou s názvom list
.
Názov {counter}
. farby je {value}
. - Výsledkom budú texty Názov 1. farby je red.
, Názov 2. farby je green.
, Názov 3. farby je blue.
.
{loop}
- Koniec slučky.
V tomto príklade bude výsledkom iba texty Názov 1. farby je red.
a Názov 1. farby je blue.
, keďže v prípade green
sa cyklus na základe zadanej podmienky preskočí premennou {continue}
a v prípade blue
sa cyklus na základe zadanej podmienky ukončí premennou {break}
.
{set list=['red', 'green', 'blue', 'pink']}
{loop list}
{if value=='green'}
{continue}
{if}
Názov {counter}
. farby je {value}
.
{if value=='blue'}
{break}
{if}
{loop}
Nespracovanie kódu
Kód vložený medzi {*}
a {*}
nebude spracovaný šablónovacím systémom. Slúži pre vloženie kódu, ktorý má byť interpretovaný iným spôsobom.
{*}
Toto je JavaScript kód, ktorý nebude spracovaný šablónovacím systémom. Môžete tu vložiť napríklad inicializáciu premenných alebo volanie funkcií.{*}
Komentáre ku kódu
Komentáre sú text, ktorý je ignorovaný šablónovacím systémom, pričom slúži primárne pre dokumentáciu kódu.
{#}
... - Jednoduchý jednoriadkový komentár, v ktorom sa ignoruje všetko od výrazu{#}
až do konca riadku.{##}
...{##}
- Jednoduchý jednoriadkový alebo viacriadkový komentár, v ktorom sa ignoruje všetko čo je medzi výrazmi{##}
a{##}
.{#
...#}
- Zložený jednoriadkový alebo viacriadkový komentár, v ktorom sa ignoruje všetko čo je zadané medzi výrazmi{#
a#}
.
{#}
Toto je jednoduchý jednoriadkový komentár.{##}
Toto je jednoduchý viacriadkový komentár.
Môžete tu napísať viacero riadkov textu.
{##}
{#
Toto je zložený jednoriadkový komentár.#}
{#
Toto je viacriadkový komentár.
Môžete tu napísať viacero riadkov textu.
#}