[EVO] EvoGallery многоуровневая галерея
Вот изучаю галерею, хочу сделать универсальную, с возможностью вкладывать альбомы неограниченно…
Эскизы для альбомов брать первый из дочернего.
Вот как я сделал, хочу узнать может можно проще сделать… оптимизировать)
Демо на bootstrap pevm.ru/galereya/
Вызов галереи в шаблоне:
Чанк galTPL
Чанк galleryListItem
Чанк firstitem
Сниппет для поиска первого дочернего документа
Эскизы для альбомов брать первый из дочернего.
Вот как я сделал, хочу узнать может можно проще сделать… оптимизировать)
Демо на bootstrap pevm.ru/galereya/
Вызов галереи в шаблоне:
[*isfolder:is=`1`:then=`
<div class="row">
[*content*]
<ul class="thumbnails">
[[Ditto? &parents=`[*id*]` &display=`all` &tpl=`galTPL` &noResults=` ` &sortDir=`ASC` &sortBy=`menuindex` ]]
</ul>
</div>
`*]
[*isfolder:is=`0`:then=`
<div class="row">
<ul class="thumbnails">
[[EvoGallery? &display=`images` &itemTpl=`galleryListItem` ]]
</ul>
</div>
{{comments}}
`*]
Чанк galTPL
<li class="span3 text-center">
<a title="[+title+]" href="[~[+id+]~]">
[[EvoGallery? &limit=`1` &docId=`[[first_child? &parent=`[+id+]`]]` &itemTpl=`firstitem` ]]
</a>
<p class="text-center"><a title="[+title+]" href="[~[+id+]~]" >[+pagetitle+]</a></p>
</li>
Чанк galleryListItem
<li class="span3 text-center">
<a rel="group" href="[+images_dir+][+filename+]" class="various1" >
<img src="[+thumbs_dir+][+filename+]" alt="[+title+]" class="img-polaroid" />
</a>
</li>
Чанк firstitem
<img src="[+thumbs_dir+][+filename+]" alt="[+title+]" class="img-polaroid"/>
Сниппет для поиска первого дочернего документа
<?php
//[[first_child? &parent=`[+id+]`]]
$parent = isset($parent) ? $parent : $modx->documentIdentifier;
$children= $modx->getActiveChildren($parent, 'menuindex','asc');
$child= is_array($children) ? $children[0]['id'] : $parent;
if ($child=="") {$child=$parent;}
return $child;
?>