Отображать/скрывать контент в зависимости от значения дополнительного поля [DLE all]

Отображать/скрывать контент в зависимости от значения дополнительного поля [DLE all]

Название: Отображать/скрывать контент в зависимости от значения дополнительного поля
Автор: rashpil
CMS: DLE ALL
Описание:
Представляю вашему вниманию хак, который позволит отображать или скрывать контент в зависимости от значений дополнительных полей в новости.
Этот хак создаёт специальный тег, который похож на уже известные и очень удобные теги [aviable и [category, поэтому надеюсь, что так же с лёгкостью каждый владелец сайта на DLE, сможет использовать и теги этого хака.
Выглядит он следующим образом:

[if_xf field="variant" value="Пятый"] Текст или html код[/if_xf]

Где:
field – в него записывается имя дополнительного поля, значение которого проверяется.
value – это значение поля. В него может быть записано не одно, а сразу несколько значений, разделяя их знаком |.
Пример:

[if_xf field=" variant " value="Пятый|Шестой] *** Пятый или шестой *** [/if_xf]

И обратный ему тег:

[if_xf_hide field="variant" value="Шестой"] *** Текст или html код *** [/if_xf_hide]

Скроет текст, если в поле variant будет значение: «Шестой». Иначе, будет его отображать. В обратном, соответственно тоже можно использовать несколько значений. Блок будет скрыт, если хоть одно из них задано в дополнительном поле.
Пример:

[if_xf_hide field="variant" value="Пятый|Шестой"] *** Текст или html код *** [/if_xf_hide]

С помощью этого хака можно удобным образом структурировать шаблон новости, опираясь на значения доп полей. Что позволяет например скрыть плеер, только установив галочку в панели редактирования новости.
Правильно построить теги, я помогу после покупки бесплатно.
Например, можно создать дополнительное поле типа «Список» с 2-мя вариантами. И построить в шаблоне следующую конструкцию:

[if_xf field="newfield" value="Нет"] *** Текст 1 *** [/if_xf]
[if_xf field="newfield" value="Есть"] *** Текст 2 ****[/if_xf]

Такая конструкция позволит отображать Текст 1, в случае, если в дополнительном поле задать значение «Нет», а в случае, если выбрано значение «Есть», отобразит Текст 2. Получается что-то вроди конструкции if-else, или если быть точнее if-elseif. Конечно, можно использовать несколько тегов, настроенных на одно поле под ряд и увеличить блок проверки.