Для отображения фотогалереи для начала нужно в панели управления сайтом создать страницу фотогалереи, с произвольным адресом страницы (например /photogallery
) и с шаблоном страницы Фотогалерея (photos.html)
. Затем создать фотогалерею, содержащую в себе хотя бы один альбом через страницу Фотогалерея
в панели управления сайтом. Теперь в шаблоне photos.html в месте, где необходимо вывести фотогалерею, нужно прописать следующий код:
{{widgetRenderByType(
'gallery', {
widget_name: 'photogallery',
gallery_type: 'photo',
}
)}}
Также есть такая конструкция, позволяющая создавать галереи вручную:photogallery
– имя виджета, указанное при создании фотогалереи в панели управления сайтом.
{% set a = widgetDataByType(
'gallery', {
widget_name: 'photogallery',
gallery_type: 'photo',
}
) %}
{{v_dump(a)}}
Полный вариант:
{% set album = xget('album', 0) %}
{% set album = album == '' ? 0 : album %}
{% set gallery = widgetDataByType('gallery', {
widget_name: 'photogallery',
gallery_type: 'photo',
}).data %}
{% if album != 0 %}
{% set selimages = [] %}
{% set selalbum = [] %}
{% for item in gallery %}
{% if item.pkid == album %}
{% set selalbum = item %}
{% set selimages = item.content %}
{% endif %}
{% endfor %}
<table>
{% if selalbum.pkid == album %}
<tr>
<td><a href="{{UrlGetAdd(link(page.uri), 'album', selalbum.parent_pkid)}}">На уровень выше</a></td>
</tr>
{% endif %}
<tr><td></td></tr>
<tr>
<td>Альбомы</td>
</tr>
{% for item in gallery %}
{% if item.parent_pkid != 0 %}
{% if item.parent_pkid == album %}
<tr>
<td><a href="{{UrlGetAdd(link(page.uri), 'album', item.pkid)}}">{{item.title}}</a></td>
</tr>
{% endif %}
{% endif %}
{% endfor %}
</table>
{% if selimages|length > 0 %}
<table>
{% for image in selimages %}
<tr>
<td>
<img style="width: 100px; height: 100px;" src="{{image.link}}" />
</td>
</tr>
{% endfor %}
</table>
{% else %}
Альбом пуст!
{% endif %}
{% else %}
<table>
<tr>
<td>Альбомы</td>
</tr>
{% for item in gallery %}
{% if item.parent_pkid == 0 %}
<tr>
<td><a href="{{UrlGetAdd(link(page.uri), 'album', item.pkid)}}">{{item.title}}</a></td>
</tr>
{% endif %}
{% endfor %}
</table>
{% endif %}