Якщо при виклику if
умова в параметрі is
виконується, то виведеться вміст параметра then
, якщо ні - вміст параметра else
.
Якщо необхідно нічого не виводити через then
або else
, то можна зовсім не задавати цей параметр.
При роботі з зовнішніми плейсхолдерами необхідно викликати сніппет некешованим.
А зовнішній плейсхолдер це, наприклад, з Ditto.
// приклад виклику кешованого...
// і некешованого if
[!if? &is=`2887:=:5` &then=`true` &else=`false`!]
Параметр | Опис | Можливі значення | По-замовчуванню |
---|---|---|---|
is | Оброблювана умова | що порівнюємо: як порівнюємо: з чим порівнюємо | Пусто |
then | Вміст для виведення, якщо умова вірна | @tpl:chunkname або будь-який html-код з тегами MODX |
Пусто |
else | Вміст для виведення, якщо умова не вірна | @tpl:chunkname або будь-який html-код з тегами MODX |
Пусто |
math | Включає виконання математичних функцій в параметрі is |
on | Пусто |
separator | Роздільник в умові | Наприклад, ~ |
: |
Для того щоб парсер не обробляв варіант і then
і else
, як це робить PHx, викликайте: &then='@TPL:chunkname'
— де chunkname
- ім'я чанка.
У цьому випадку буде виконаний тільки результуючий чанк.
is, = - дорівнює
not, != - не дорівнює
>, gt - більше
<, lt - менше
>=, gte - більше або дорівнює
lte, <= - менше або дорівнює
isempty, empty - перевірка на порожнечу
not_empty, !empty - перевірка на заповненість
null, is_null - перевірка, чи є значення змінної рівним NULL
in_array, inarray, in - наявність в масиві
not_in, !in - відсутність в масиві
contains - наявність в рядку
not_contains, !contains - відсутність в рядку
is=`*10:=:30`
1) Виводити акцію потрібно тільки в каталозі з ID = 5
2) Виводити акцію потрібно тільки в каталозі з ID = 5 або в каталозі з шаблоном №7,8,9
3) Виводити акцію потрібно тільки в каталозі з ID = 5 і тільки в ресурсі з шаблоном №2
4) Виводити акцію потрібно тільки в каталозі з ID = 5 і тільки в ресурсі з шаблоном №2 або в інших шаблонах але з ТВ show_akcia = 1
5) Виводити акцію тільки для товарів з ціною в діапазоні >300$ <=700$
6) Виводити при кратності запису Ditto 3
7) Виводити при кратності запису Ditto 3 але з множенням значення
8) Виводити значення математичного виразу