Тест: содержание на основе категорий
Сравнение трёх способов построить оглавление из категорий.
На страницах устройств стоят шаблоны Шаблон:Контроллер и Шаблон:Модуль реле. Они добавляют страницу в нужную категорию с ключом сортировки.
1. Бот-генерация (статика)
Список собран Python-скриптом через API. Не пересчитывается, пока не запустишь скрипт повторно. Зато можно произвольно форматировать.
- Контроллеры
- Wiren Board 7.4 (ключ:
7) - Wiren Board 8.5 (ключ:
8.5) - Wiren Board 8M (ключ:
8M)
- Wiren Board 7.4 (ключ:
- Модули реле
- WB-MR6C v.3 Modbus Relay Modules (ключ:
MR6C v.3) - WB-MRPS6 Modbus Relay Modules (ключ:
MRPS6) - WB-MRWL3 Modbus Relay Modules (ключ:
MRWL3)
- WB-MR6C v.3 Modbus Relay Modules (ключ:
2. CategoryTree (живое дерево)
Тег <categorytree> рендерится сервером. Параметр depth определяет, сколько уровней пререндерится в HTML — глубже этого уровня подкатегории раскрываются по клику через AJAX.
depth=0 — свёрнутый, всё по клику
depth=1 — раскрыт на один уровень
depth=2 — раскрыт на два уровня
depth=2, mode=pages — только страницы
depth=2, со счётчиками (showcount=on)
3. DynamicPageList3 (живой список с фильтрами)
Тег <DPL> делает запрос к базе вики и возвращает список. Пересчитывается при каждом просмотре. Поддерживает сложные условия и форматирование.
Контроллеры, упорядоченные по ключу сортировки
Модули реле
Все устройства из обеих подкатегорий (OR через |)
- Wiren Board 7.4
- Wiren Board 8.5
- Wiren Board 8M
- WB-MR6C v.3 Modbus Relay Modules
- WB-MRPS6 Modbus Relay Modules
- WB-MRWL3 Modbus Relay Modules
Реле, нумерованным списком, по алфавиту имён
| вместо | в parser-function форме Extension:DynamicPageList3 (DPL3), version 3.4.6: Error: No selection criteria found! You must use at least one of the following parameters: category, namespace, titlematch, linksto, uses, createdby, modifiedby, lastmodifiedby, or their 'not' variants
Extension:DynamicPageList3 (DPL3), version 3.4.6: Error: No selection criteria found! You must use at least one of the following parameters: category, namespace, titlematch, linksto, uses, createdby, modifiedby, lastmodifiedby, or their 'not' variants
В parser-function форме | ломает параметры, поскольку MediaWiki считает его разделителем шаблона. Лекарство — magic word {!}: он раскрывается в литерал | уже после разбиения параметров.
- Wiren Board 7.4
- Wiren Board 8.5
- Wiren Board 8M
- WB-MR6C v.3 Modbus Relay Modules
- WB-MRPS6 Modbus Relay Modules
- WB-MRWL3 Modbus Relay Modules
Прямые ссылки на категории
Содержание обновляется запуском Шаблон:Tt (для блока бот-генерации). Блоки CategoryTree и DPL3 пересчитываются автоматически.