Skip to content

Commit 1b2102d

Browse files
authored
Update index.md
1 parent c5819ce commit 1b2102d

1 file changed

Lines changed: 24 additions & 14 deletions

File tree

ru/03_Компоненты/if/index.md

Lines changed: 24 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,37 @@
1-
### Сниппет для вывода информации по условию
1+
### Сниппет if - вывод информации по условию
22

3-
Логика работы: Если условие is выполняется, то выводим содержимое параметра then, если не выполняется, то выводим содержимое параметра else.
3+
#### Как работает?
44

5-
Для работы с внешними плейсхолдерами (например, `[+pages+]` в Ditto) необходимо вызывать сниппет некешируемым:
5+
Если при вызове `if` условие в параметре `is` выполняется, то выведется содержимое параметра `then`, если нет - содержимое параметра `else`.
66

7-
```[!if? &is… !]```
7+
Если необходимо ничего не выводить через `then` или `else`, то можно вовсе не задавать этот параметр.
88

9+
При работы с внешними плейсхолдерами необходимо вызывать сниппет некешируемым. Внешний плейсхолдер - это например, `[+pages+]` в **Ditto**.
910

10-
#### Параметры сниппета
11+
```
12+
// пример вызова кэшируемого...
13+
[[if? &is=`[*parent*]:=:5` &then=`true` &else=`false`]]
14+
15+
// и некэшируемого if
16+
[!if? &is=`[*parent*]:=:5` &then=`true` &else=`false`!]
17+
```
18+
19+
20+
### Параметры сниппета
1121

1222
Параметр|Описание|Возможные значения|По-умолчанию
1323
--------|--------|------------------|------------
14-
is|Обрабатываемое условие|что сравниваем:как сравниваем:с чем сравниваем|Пусто
15-
then|Содержимое для вывода, если условие верно|@tpl:chunkname или любой html-код с тегами MODX|Пусто
16-
else|Содержимое для вывода, если условие не верно||@tpl:chunkname или любой html-код с тегами MODX|Пусто
17-
math|включает выполнение математических функций в параметре is|on|Пусто
18-
separator|Разделитель в условии|например ~| :
24+
**is**|Обрабатываемое условие|что сравниваем:как сравниваем:с чем сравниваем|Пусто
25+
**then**|Содержимое для вывода, если условие верно|`@tpl:chunkname` или любой html-код с тегами MODX|Пусто
26+
**else**|Содержимое для вывода, если условие не верно||`@tpl:chunkname` или любой html-код с тегами MODX|Пусто
27+
**math**|Включает выполнение математических функций в параметре `is`|on|Пусто
28+
**separator**|Разделитель в условии|Например `~`| :
1929

20-
Для того чтобы парсер не обрабатывал вариант и then и else, как это в PHx, вызывайте: *&then=\`@TPL:chunkname\`* — где chunkname - имя чанка, тогда будет выполнен только результатирующий чанк.
30+
Для того чтобы парсер не обрабатывал вариант и `then` и `else`, как это в **PHx**, вызывайте: `&then='@TPL:chunkname'` — где `chunkname` - имя чанка. В этом случае будет выполнен только результатирующий чанк.
2131

2232
***
2333

24-
#### Операторы используемые в условии
34+
### Операторы используемые в условии
2535

2636
**is, =** - равно
2737

@@ -47,12 +57,12 @@ separator|Разделитель в условии|например ~| :
4757

4858
***
4959

50-
#### Выполнение математических функций:
60+
### Выполнение математических функций:
5161

5262
is=`[+id+]*10:=:30`
5363

5464

55-
#### Примеры использования
65+
### Примеры использования
5666

5767
1) Выводить акцию нужно только в каталоге с ID = 5
5868
[[if? &is=`[*parent*]:=:5` &then=`@TPL:akcia`]]

0 commit comments

Comments
 (0)