Комплексный компонент (catalogs)
Комплексный компонент предназначен для вывода данных из информационных каталогов в виде многостраничной структуры: элементы, элемент детально (отдельная страница), пагинация.
Данный компонент можно использовать например для вывода списка новостей с возможностью перейти в подробное описание новости на отдельной странице.
| Название | Параметр | Описание |
|---|---|---|
| Шаблон компонента | template | Список шаблонов компонента |
| Источник данных | catalog | Информационный каталог из которого выводить данные |
| Разделы | sections[] | Разделы из которых выводить элементы |
| Выводить элементы подразделов | sections_sub | 1 - Да / 0 - Нет |
| Выводить URL разделов | sections_url | 1 - Да / 0 - Нет |
| Критерий сортировки | sort |
date - По дате публикации |
| Порядок сортировки | sort_type |
|
| Формат даты | date_format |
Шаблон для формирования строки даты |
| Количество выводимых элементов | per_page | Количество выводимых элементов на странице, 0 - выводить все. |
| Выводить элементы только при наличии раздела | sections_only | 1 - Да / 0 - Нет |
| Поиск по каталогу | search | 1 - Да / 0 - Нет |
| Счетчик просмотра записей | views_count | 1 - Да / 0 - Нет |
| Предыдущий и следующий элемент | element_prev_next | 1 - Да / 0 - Нет |
| query_before | query_before | |
| extension_file | extension_file | |
| Переменная календаря | calendar_var |
Переменная даты GET запроса |
| Выборка по дате | calendar |
Параметр используется для связи с компонентом календаря. day - День / month - Месяц |
| elements_display | elements_display | |
| elements_tpl_data | elements_tpl_data | |
| element_disable_show | element_disable_show | 1 - Да / 0 - Нет |
1
<div class="entry-body">
[if=!elements]
<div class="alert-notify">К сожалению, по Вашему запросу ничего не найдено.</div>
[/elements]
{elements}
<div class="news clearfix" data-content="{elements:data-content}">
<div class="news-left">
<a href="{elements:href}">
[if=elements:image_thumb_src]
<img class="news-image" src="{elements:image_thumb_src}" alt="">[/elements:image_thumb_src]
[if=!elements:image_thumb_src]
<img class="news-image" src="{template}/assets/images/noimage.jpg" alt="">[/elements:image_thumb_src]
</a>
</div>
<div class="news-right">
<div class="news-heading clearfix">
<h3 class="news-title">
<a href="{elements:href}">{elements:title}</a>
</h3>
</div>
<div class="news-preview">
{elements:brief}
</div>
<div class="news-footer">
<ul class="news-footer-info">
<li><i class="icon icon-clock"></i> {elements:date}</li>
[if=elements:section]
<li><i class="icon icon-open-folder"></i> <a href="{elements:section_href}">{elements:section}</a></li>
[/elements:section]
<li><i class="icon icon-eye"></i> {elements:views}</li>
<li><i class="icon icon-comment"></i> {elements:comments}</li>
</ul>
<a href="{elements:href}" class="news-footer-link">Подробнее ›</a>
</div>
</div>
</div>
{/elements}
{pagination}
</div>
<div class="entry-body">
<div class="news-inner" data-content="{data-content}">
<div class="news-inner-info">
<ul class="news-inner-list">
<li><i class="icon icon-clock"></i> {date}</li>
[if=section]
<li><i class="icon icon-open-folder"></i> <a href="{section_href}">{section}</a></li>
[/section]
<li><i class="icon icon-eye"></i> {views}</li>
<li><i class="icon icon-comment"></i> {comments}</li>
</ul>
</div>
<div class="news-inner-content">
{description}
</div>
<div class="news-inner-nextprev">
<div class="row">
<div class="col-sm-6">
{element_prev}
<a href="{element_prev:href}" class="nextprev-link nextprev-link-prev">
<span class="nextprev-body">
<i class="icon icon-left2"></i>
<b class="nextprev-title">{element_prev:title}</b>
<span class="nextprev-preview">{element_prev:brief}</span>
</span>
</a>
{/element_prev}
</div>
<div class="col-sm-6">
{element_next}
<a href="{element_next:href}" class="nextprev-link nextprev-link-next">
<span class="nextprev-body">
<i class="icon icon-right2"></i>
<b class="nextprev-title">{element_next:title}</b>
<span class="nextprev-preview">{element_next:brief}</span>
</span>
</a>
{/element_next}
</div>
</div>
</div>
</div>
</div>