====== Тег {{list}} ====== ===== Описание ===== Используется для вывода в шаблонах списков или таблиц. Список будет выводиться в том случае, если переменная, указанная при помощи атрибута **using**, содержит хотя бы один элемент. В противном случае будет выведено содержимое дочернего [[list_empty_tag|тега {{list:empty}}]], если он присутствует. Переменная, указанная в атрибуте **using** должна быть или массивом, или поддерживать интерфейс Iterator. см. также раздел [[limb3:ru:packages:macro:list_tags|Вывод списков]], где есть подробная информация по работе со списочными данными в MACRO-шаблонах. ===== Синтаксис ===== {{list using='some_var' [as='item_var_name'] [key='original_key_name'] [counter='counter_var_name'] [parity='parity_var_name']}} ...some content {{/list}} Также имеет алиас **%%{{list:list}}%%**. ===== Область применения ===== В любом месте MACRO шаблона. ===== Атрибуты ===== * **using** (или **for**) - переменная, содержимое которой будет выводиться в виде списка. Массив или итератор. * **as** - название переменной, которой будет присваиваться очередной элемент из списка. По-умолчанию имеет значение **$item**. * **key** - название переменной, в которой будет храниться оригинальный ключ из массива. * **counter** - название переменной, в которой будет храниться номер выводимого элемента. * **parity** - название переменной, в которой будет храниться значение четности выводимого элемента. Имеет значение even или odd. ===== Содержимое ===== Любые дочерние теги, такие как [[list_item_tag|тег {{list:item}}]], [[list_empty_tag|тег {{list:empty}}]], [[list_glue_tag|тег {{list:glue}}]] которые определяют, как будет выводиться список, а также теги разметки и любой другой текст. ===== Пример использования ===== **Задача:** Взять список тегов из переменной $photo, определенной глобально в шаблоне, и вывести его в виде ненумерованного списка. Если ни одного тега нет, то вывести сообщение - "Нет тегов". {{list using='{$#photo.tags}' as='$tag' counter='$my_counter' parity='$my_parity'}} {{list:empty}} Нет тегов {{/list:empty}} {{/list}} Обратите внимание, что если списка тегов в переменной $photo нет, то выводится только содержимое %%{{list:empty}}%% (теги не будут выведены)