UMIhelp

Разработка сайта на UMI.CMS => Шаблоны XSLT => Тема начата: bosya от 18 Ноября 2011, 20:28:41

Название: Рандомные картинки из вложенных галерей
Отправлено: bosya от 18 Ноября 2011, 20:28:41
Добрый день!
только начинаю знакомиться с Юми и Xslt поэтому вопрос может показаться глупым.
Есть галерея в которой нет изображений
,но есть вложенные галереи с картинками.
Каким образом можно вывести все картинки из вложенных галерей в случайном порядке? либо в порядке добавления?
Пытаюсь вот таким варварским способом) но выводит только первый альбом

<xsl:variable name="albums-list" s elect="document(concat('u data://photoalbum/albums/defau lt/0/0/',@pageId,'/rand'))//item/@id" />
<xsl:variable name="photolist" select="document(concat('udata://photoalbum/album/', $albums-list))/udata"/>

Можно конечно пройтись циклом, но появятся проблемы с пагинацией.+не решает вопрос рандома.
Видел решение с рандомом через шаблон данных, но там нужно выбирать конкретные изображения. Как бы это все автоматизировать?
Название: Re:Рандомная картинки из вложенных галерей
Отправлено: NOIRMAN от 19 Ноября 2011, 03:24:00
Usel запрос в помощь.
Что то вроде вот такой конструкции -
Цитировать
<?xml version="1.0" encoding="utf-8"?>
<selection>
   <target result="pages">
         <type module="photoalbum" method="photo" />
         <category depth="1">ID-Категории первого уровня</category>
   </target>
</selection>
Название: Re:Рандомные картинки из вложенных галерей
Отправлено: bosya от 19 Ноября 2011, 17:30:13
Спасибо, как все просто то оказывается) А я то уж в апи полез)
Название: Re:Рандомные картинки из вложенных галерей
Отправлено: admin от 19 Ноября 2011, 17:30:23
поддерживаю Noirman, usel идеальный вариант (документация по протоколу usel http://help-dev.umi-cms.ru/chapter.XSLTTemplates.usel.html), добавлю лишь что для вывода всех фотографий из ваших подразделов нужно добавить в xml шаблон для usel строчки sort, и можно еще добавить ограничение и воспользоваться пагинацией через тег limit.
О том, как делать пагинацию через usel, поищите на форуме и на сайте уже обсуждалось, по-моему.
 
<?xml version="1.0" encoding="utf-8"?>
<selection>
   <target result="pages">
         <type module="photoalbum" method="photo" />
         <category depth="1">ID-Категории первого уровня</category>
   </target>
   <sort>rand()</sort>
   <limit page="0">10</limit>
</selection>
Название: Re:Рандомные картинки из вложенных галерей
Отправлено: bosya от 19 Ноября 2011, 18:24:48
Да, что-то наподобие и получилось, спасибо) все работает)
<?xml version="1.0" encoding="utf-8"?>
<selection>
<target result="pages">
<type module="photoalbum" method="photo" />
<category depth="4">{1}</category>
                <sort order="descending">publish_time</sort>
                         <!-- <sort>rand()</sort> -->
</target>


<limit page="0">{2}</limit>
</selection>




Название: Re:Рандомные картинки из вложенных галерей
Отправлено: admin от 19 Ноября 2011, 18:29:56
вот так