Створимо додаткове поле (TV-параметр) з наступними характеристиками:
Створення плагіна для поновлення TV-поля views
Тікет - це розширення стандартного типу ресурсу modDocument. Дані типи ресурсів (тікет і розділ для тікетів) можна створювати тільки після встановлення додатків CMS MODX Revolution Tickets.
Код плагіна буде виконуватися при настанні системного події OnLoadWebDocument. Дана подія настає після завантаження документа, але до обробки MODX тегів. Для отримання поточного ресурсу в плагіні будемо використовувати конструкцію $ modx-resource.
Код плагіна viewsCount:
Для того щоб плагін відстежував цю подію, його необхідно поставити галочку напроти на вкладці "Системні події".
Вибір подій, які повинен відслідковувати плагін viewsCount
- # 91; # 91;! + ViewsTicket # 93; # 93; (Для тікета).
- # 91; # 91;! + ViewsSection # 93; # 93; (Для розділу з тікетами).
Плейсхолер необхідно викликати не кешувати.
Сніппет для перерахунку значень полів views розділів
Для виконання цього сниппета (наприклад, countViewsSection) необхідно помістити його виклик в будь-який ресурс:
Після відкриття ресурсу в браузері значення TV полів розділів views перерахувати.
Сніппет для виведення найпопулярніших статей
Створимо сниппет для виведення найбільш переглядаються статей (тікетів) на сайті. Робота сниппета здійснюється на значеннях TV-поля views (в прикладі id поля дорівнює 2). Для зниження навантаження, результат роботи сниппета будемо зберігати в кеш на 3 години. Оформлення результатів будемо виконувати за допомогою чанка.
Код сниппета topTicketsView:
Виклик сниппета topTicketsView в шаблоні:
Після оформлення (за допомогою стилів CSS) блок найпопулярніших статей може візуально на сайті виглядати так:
Приклад дизайну секції найбільше переглядаються ресурсів на сайті