Дополненный перевод официальной документации: MIGX.Frontend-Usage
Плейсхолдеры getImageList
- [[+fieldname]] — любое поле из конфигурации MIGX или из переданных параметров в сниппет
- [[+idx]] — порядковый номер, начиная с 1
- [[+_first]] — вернет 1, если это первая запись
- [[+_last]] — вернет 1, если это последняя запись
- [[+_alt]] — вернет 1, если это четная запись
- [[+total]] — общее число элементов (можно изменить через &totalVar)
- [[+property.name]] — выведет параметр с именем &name=`` в вызове getImageList. Например, при вызове:
[[getImageList? &tvname=`slider` &tpl=`@CODE: [[+image]]`]]
плейсхолдер [[+property.tvname]] будет иметь значение «slider».
Параметры getImageList
- &tvname — название TV с типом ввода MIGX
- &tpl — имя чанка для вывода каждой записи. Можно использовать @CODE:, @FILE:, @FIELD
- &docid — можно указать ID документа, чей TV надо обработать. По умолчанию: [[*id]]
- &value — JSON строка для обработки getImageList. Если указан, параметры &docid и &tvname будут проигнорированы. Можно использовать для вывода в getImageList еще одного вызова getImageList
- &limit — количество записей для вывода. По умолчанию: 0
- &offset — количество записей, которые необходимо пропустить. По умолчанию: 0
- &totalVar — имя плейсхолдера, в котором содержится общее количество записей. По умолчанию: total
- &randomize — если установить 1, результаты будут отсортированы в случайном порядке. По умолчанию: 0
- &preselectLimit — вместе с параметров &randomize можно указать число записей, которые выведутся в любом случае. По умолчанию: 5
- &where — JSON строка с условиями выборки, например: {«active:=»:«1»,«rating:>»:«5»}
- &sort — JSON строка с условиями сортировки. Можно указывать несколько параметров: [{«sortby»:«age»,«sortdir»:«DESC»,«sortmode»:«numeric»},{«sortby»:«name»,«sortdir»:«ASC»}]
- &toPlaceholder — сохранить вывод в плейсхолдер
- &toSeparatePlaceholders — сохранить каждую запись в отдельный плейсхолдер. Например, &toSeparatePlaceholders=`item` создаст плейсхолдеры: [[+item.1]], [[+item.2]] и т.д.
- &outputSeparator — разделитель между результатами
- &wrapperTpl — чанк-обертка для вывода результатов. Принимает плейсхолдер [[+output]] для вывода результатов
- &processTVs — включить режим обработки вывода TV параметров (для полей с inputTV). По умолчанию: 1
Выбор шаблона для каждого результата
Для каждой записи можно использовать свой шаблон вывода. Для этого в конфигурации MIGX TV указываем поле для выбора шаблона, например:
{ "field": "chunk", "caption": "Чанк для вывода", "inputTVtype": "listbox", "inputOptionValues": "Вывод 1==migx_tpl_1||Вывод 2==migx_tpl_2" }
Далее, создать чанки для вывода: migx_tpl_1, migx_tpl_2. Чтобы не создавать чанки, можно использовать @CODE: и @FILE: (как для параметра &tpl). И потом вызвать getImageList со следующими параметрами:
[[getImageList? &tvname=`myMIGXtv` &tpl=`@FIELD:chunk` ]]
т.е. вывести все опубликованные фото с именем галереи «gallery_1». Это для реализации нескольких слайдеров на одном ресурсе. Так вот по отдельности — условия работают и фильтруют, а вместе ничего не выводится. Использовал последнюю версию MIGX
И вот здесь Fi1osof также говорит, что условие только одно можно поставить
Однако, могу предположить, что можно через сниппет:
Вызываем getImageList с параметрами:
В &input передаются ID ресурсов, с которых надо получить migx поля, &tvid — ID TV поля migx, &tpl — чанк для вывода результатов.
P.S.: результат не проверял.
А когда вызываю
показывает только из одного раздела.
Таким образом я переназначил MIGX_id для общего списка, потому как из разных документов они повторялись.
Проблема в том, что есть несколько ресурсов с сотрудниками.
Воспользовался примером вашего сниппета json_merge:
Вывожу так:
Проблема в том, что вывод «склеивает» всё в один раздел. Т.е. например 5 сотрудников из одного раздела выводятся корректно, а остальные «добавляются» к этому же разделу и не перекидывают на верный.
Пример
teamElementIndex:
добавить
В чанке соответственно ссылка [[~[[+contentid]]]]
Можете чуть подробнее описать что нужно сделать?
типа так
Слишком мало данных, нужно подробнее описать (название ТВ с migx, вкладки формы, чанк с выводом).
Создал шаблон, в нем лого выводятся в виде списка внутри тега
.
Само TV, подключаемое к шаблону с типом migxВкладки: Разметка колонок: Чанк шаблона partnerTpl имеет вид: Уже что только не пробовал. Просто пустой вызов сниппета тоже ничего не выводит. Пробовал в шаблоне TV прописать partners и тоже ничего не вышло. А слайдер на главной выводится нормально.Попробовал вызов слайдера вставить на страницу с партнерами и тоже ноль. Не выводит даже массив.Разметка в шаблоне такая:
[[getImageList?
&docid=`1`
&tvname=`tv`
&tpl=`tpl`
&limit=`1`
]]
А в tpl, где id — 1:
{set $rows = json_decode(1 | resource: 'tv', true)}
{foreach $rows as $idx => $row first=$first}
{if $first}
{/if}
{/foreach}
не могу вывести значения из вложенного MIGX поля, хотя при вызове имени плейсхолдера с самим MIGX показывает json объект. Помогите пожалуйста в нелегком деле
Вот html код слайдера:
Мучаюсь несколько дней
сам чанк one_news
В чем может быть ошибка? не добавляет новость
Что означает &tvname и какие бывают значения?
Чанк лежит в /core/elements/template/chunks, но при выводе возвращает массив параметров. В чем может быть проблема?
Вызов делаю вот такой конструкцией
P.S. menuindex и idx не работают…
или вот так
то тоже работает
Написала вам, потом добавила сортировку и теперь выводит 4 записи)