Особливості

    DocLister: Особливості

    особливості сніпета DocLister

    Сніпет для виведення інформації з різних таблиць. Спочатку розроблявся як заміна сніпета Ditto, але в підсумку істотно перевершив його в можливостях, гнучкості і продуктивності. При цьому в простих випадках використовувати DocLister не складніше, ніж Ditto (багато параметрів збігаються).

    Для роботи DocLister потрібно PHP 5.6 або вище.

    Відмінні риси сніпета DocLister:

    • легко розширюється;
    • дозволяє виводити дані з будь-яких таблиць (в тому числі з каталогу Shopkeeper);
    • є можливість вивести дані в json-форматі;
    • можливість довільної обробки даних перед виведенням;
    • зручні засоби налагодження;
    • сортування по TV-параметрам з перетворенням типів;
    • фільтрація документів, в тому числі по TV-параметрам;
    • підтримка лексиконів;
    • завантаження параметрів з файлів.

    Клас для виведення інформації з таблиць по визначеним правилам. Якщо немає правил, то дані відображаються без додаткової обробки і зв'язку. Тобто всі поля і значення збігаються з базою даних.

    Правила для обробки інформації описані в контролерах. Головний контролер - site_content, який визначає зв'язок основних документів site_content з даними в TV-параметрах

    На базі класу DocLister сформовано 12 сніпетів:

    • DocLister - основний сніпет для виведення інформації за принципом сніпетів Ditto і CatalogView
    • DLcrumbs - для формування хлібних крихт за принципом сніпета Breadcrumbs
    • DLglossary - для фільтрації документів по першому символу в певному полі
    • DLvaluelist - для заміни сніпета DropDownDocs
    • DLTemplate - для заміни $modx->parseChunk()
    • DLFirstChar - вибірка документів і угруповань в блоках по першій букві
    • DLPrevNext - циклічна навігація вперед / назад між сусідніми документами
    • DLMenu - Побудова меню необмеженої вкладеності
    • DLSitemap - Побудова xml-карти сайту
    • DLReflect - Побудова списку дат
    • DLReflectFilter - Фільтрація документів по датах
    • DLBeforeAfter - Пагінація по минулим і майбутнім подіями з урахуванням поточної дати

    Компоненти на базі DocLister:

    • SimpleGallery – висновок галереї на сторінці
    • SimpleTube – плагін і сніпет для створення відеогалереї
    • SimpleFiles – прикріплюємо на сторінку файли
    • SimplePolls
    • LikeDislike – можливість ставити оцінки
    • FormLister - cніпет для роботи з формами
    • FastImageTV
    • DLRequest - запуск сніпетів з параметрами з get/post
    • evoSearch
    • eFilter
    • Selector - custom TV для складання списку документів

    Автор: Agel_Nash