UMIhelp

Разработка сайта на UMI.CMS => Шаблоны XSLT => Тема начата: pokerflat от 18 Марта 2012, 20:11:32

Название: Вывод всех объектов каталога, подскажите
Отправлено: pokerflat от 18 Марта 2012, 20:11:32
Здравствуйте, подскажите пожалуйста, хочу вывести все объекты каталога. Сделал шаблон, в нем прописал вывод    
      
   <xsl:apply-templates select="document('udata://catalog/getObjectsList/void/(/shop/)/99//1/')" />   
   
  По логике должны выводиться все объекты с лимитом 99 и любой вложенности, но не работает.
  А если указать конкретный каталог например так

     <xsl:apply-templates select="document('udata://catalog/getObjectsList/void/(/shop/kavo/)/99//1/')" />  

    Все отлично работает, перелопатил форумы, не могу понять в чем дело.
Название: Re:Вывод всех объектов каталога, подскажите
Отправлено: pokerflat от 18 Марта 2012, 21:17:29
Сам спросил, сам ответил)
Чтобы вывелись все объекты нужно вставить это
      <xsl:apply-templates select="document(concat('udata://catalog/getObjectsList/', page/@id, '////2/'))/udata" />
Название: Re: Вывод всех объектов каталога, подскажите
Отправлено: john от 18 Июня 2015, 22:43:17
Помогите разобраться, данный макрос выводит все объекты и причем в разброс, нужно вывести по порядку
<xsl:apply-templates select="document(concat('udata://catalog/getObjectsList//', page/@id, '///2/'))/udata" />
1. List// - Шаблон, по которому выводятся объекты каталога, у меня он пустой
2. page/@id - id или путь до раздела каталога
далее набор
3. '///2/' Как я понимаю применяется правило ниже
limit  -  Количество объектов, выводимых на странице.
ignore_paging -  Игнорировать постраничный вывод.
i_need_deep  -  Глубина поиска объектов списка (во вложенных подразделах). По умолчанию — только в текущем разделе.
field_id -   id или имя поля, по которому должна выполняться сортировка. По умолчанию сортировка выполняется по расположению объектов в иерархии.
asc -   Порядок сортировки. Значение "1" задает прямой порядок сортировки, "0" — обратный.

Если я вношу изменения так '///2/1' или так '5///2/'
Макрос перестает работать.

Название: Re: Вывод всех объектов каталога, подскажите
Отправлено: john от 19 Июня 2015, 17:43:22
Разобрался в выводе объектов

сортировка по ASC
concat('udata://catalog/getObjectsList//', page/@id, '///2//1')

сортировка по DESC
concat('udata://catalog/getObjectsList//', page/@id, '///2//0')

Но все равно не так объекты выводятся, выводится пара по прядку и потом влезают другие
Что еще может влиять?
Название: Re: Вывод всех объектов каталога, подскажите
Отправлено: admin от 08 Июля 2015, 14:42:55
не уверен что вы верно указали id поля, который вам нужен. В своей практике, вместо id я указываю название поля, то есть примерно так

concat('udata://catalog/getObjectsList//', page/@id, '///proizvoditel//1')
Название: Re: Вывод всех объектов каталога, подскажите
Отправлено: john от 09 Июля 2015, 23:28:38
Спасибо.

Чтобы не путаться, удалил лишние слова
concat('udata://catalog/getObjectsList/template null/', page/@id, '/limit/padding/deep/field/order')