Особенности

    ListChild: Особенности

    Особенности cниппетa для формирование динамического списка дочерних документов.

    Основная задача сниппета ListChild для MODX Evolution - формирование динамического списка дочерних документов в TV-параметре с типом ввода DropDown List Menu, Listbox, Check Box или Radio Options. Хотя, его возможности этим не ограничиваются. Мне уже не раз встречались подобные сниппеты, выполняющие эту же задачу, но в них не хватало гибкости и дополнительных настроек. К тому же, не будем забывать, что подобные задачи легко реализуются с помощью несложного MySQL запроса, примерно так:

    @SELECT pagetitle, id FROM modx_site_content WHERE parent=10 and published=1 and deleted=0

    Поэтому, написание еще одного подобного сниппета напоминает изобретение велосипеда. Но сниппет ListChild имеет ряд преимуществ:

    • работает не только в backend, но и во frontend
    • большое количество дополнительных настроек, учтены практически все возможные варианты выборки
    • возможность задавать глубину сканирования
    • может вызываться несколько раз на одной странице (для frontend)
    • может запоминать выбранные значения (для frontend)
    • подключение собственного шаблона, что позволяет выводить не только раскрывающийся список, но и переключатели (для frontend)
    • может выводить количество найденных документов или список их идентификаторов
    • вывод подменю или анонсов статей

    Не работает с TV-параметрами