Разработка сайтов на UMI.CMS
Знать UMI.CMS в совершенстве невозможно.
Даже сами разработчики знают о ней не все...

UMi

Ursa Minor

Вывод по условию в tpl-шаблонах

Во-первых, существует макрос %system ifClause()%, который позволяет вывести то или ионое строковое содержимое в зависимости от истинности передаваемого условия. Очень древний макрос и очень простой. Если вы уже обрадовались и представили как делаете ветвление с вывзовом того или иного макроса, то жестоко разочаруетесь. В лучшем случае можно вывести ту или иную строку (и, подозреваю, не содержащую запятых).

 

Гораздо более мощный инструмент - это шаблоны модуля data.

Для примера возьмем часто встречающуюся задачу вывести  картинку анонса к новости, если он есть, или картинку-заглушку.

Картинка у нас выводится макросом %data getProperty(%id%, 'anons_pic','anons_pic')%

Здесь первое  anons_pic - это имя поля, второе - имя шаблона в папке data.

Теперь в шаблоне anons_pic  находим блок, отвечающий за вывод изображения:

 

$FORMS['img_file'] = <<<END
%system makeThumbnail(%filepath%, '70', '50', 'view')%
END; 

 

Чтобы указать UMI.CMS что делать, если поле не заполнено, следует создать еще один блок, добавив к имени ключевое слово _empty, и указать в нем желаемое действие:

$FORMS['img_file_empty'] = <<<END
<img src="/gif/empty.jpg">
END;

Все просто.

 

 

Новости

30.10.2016

Обновлено описание макроса для вывода всех элементов справочника UMI.CMS с учетом версии 14.

 

21.07.2015

Памятка по обновлению до debian 8.1. Приятно вкусить все плюшки PHP 5.6

11.11.2014

Как выполнить SQL-запрос из bash-скрипта. Памятка

11.11.2014

Как отследить нагрузку сайта на сервер.

06.11.2014

Заготовка для галереи изображений с прокруткой. Не знаю, когда дойдут руки довести ее до вида плагина, поэтому открываю как есть. Можно доработать.

05.11.2014

Выкладываю как заготовку свой слайдер изображений на mootools

Все обновления