Центральна спільнота
Advertisement
Центральна спільнота
Це розширення підключається за запитом.

DPL (Динамічний список сторінок) — розширення MediaWiki, яке дозволяє створювати списки сторінок, використовуючи різні критерії, наприклад, приналежність статті до категорії або згадка в неї певного інфобоксу.

DPL — потужний інструмент, що збільшує навантаження на сервер, що може стати причиною повільного завантаження сторінок вашій вікі. Тому настійно рекомендуємо ознайомитися з розділом Ефективне використання DPL цієї статті.

Можливості DPL[]

DPL корисний тим, що малим об'ємом коду можна створити великий і детальний список, складання якого вручну займе багато часу

  • Створення динамічних списків сторінок на основі різних параметрів: заголовків статей, просторі імен, присутності в категорії, згадці інфобоксу в статті тощо
    • Наприклад, ви зможете створити сторінку, що містить список усіх статей, що входять у дві категорії, але не входять в третю.
  • Відображення інформації про сторінку, наприклад, дати останнього редагування і редактора.
  • Вивід результатів в різних видах: в один рядок, у вигляді таблиці, простого чи нумерованого списку.
  • В отриманих списках можуть бути використаний користувальницький стиль і роздільники між назвами сторінок.

Як розмістити DPL на сторінці[]

DPL запит повинен бути заключений в теги <dpl></dpl>. Між ними ви можете перерахувати широкий набор параметрів для налаштування зовнішнього вигляду результатів.

Інший способ — використовувати код {{#dpl: .... }}.

Приклад DPL запиту, який виведе список статей з категорії «Локації»:

<DPL>
category=Локації
</DPL>

В подальшому його можна налаштувати так, щоб він виводив усі сторінки з простору імен «Локації», що містяться в категорії «Локації», але не потрапивши в категорію «Локації Outlast», у вигляді нумерованого списку:

<DPL>
category=Локації
notcategory=Локації Outlast
namespace=Локація
mode=ordered
</DPL>

Повний список параметрів доступний за посиланням.

Ефективне використання DPL[]

По-перше, перед тим як запитувати DPL, переконайтеся, що він вам дійсно потрібний. Уповільнення роботи вікі може позначитися на голосуваннях, вбудованих RSS і відео.

По-друге, якщо ви вирішили, що DPL — кращий варіант для вашого завдання, дайте DPL закешувати результати! Просто додайте в DPL запит рядок:

allowcachedresults=true

Інструменти, що замінюють DPL[]

Створення простих списків категорій
  • Може бути зроблено за допомогою <categorytree> тегів (документація). Приклад коду для отримання списку сторінок в категорії «Спільнота»:
<categorytree mode="pages" hideroot=on>Спільнота</categorytree>
Створення списків сторінок
  • Використовуйте NewPages для виводу статей обраної категорії або простору імен.
Випадковий контент
Створення складних списків (з перетином категорій, форматуванням тощо.)
Просунуте використання
  • Переконайтесь що не існує вузькоспеціалізованого розширення перш ніж використовувати DPL. Наприклад, замість того щоб створити календар на DPL, пропонуємо вивчити це. Якщо ви не впевнені або не знайшли потрібне розширення, зв’яжіться з нами, і ми будемо раді вам допомогти.

Чого варто уникати[]

Не використовуйте DPL для:

  • функцій, що використовують «randomcount», — вони не можуть бути закешовані;
  • більших запитів — не виводьте на екран 500 рядків, якщо достатньо 20;
  • випадків, де потрібно більше двох запитів в статті;
  • шаблонів, які використовують site-wide, — створюються приховані DPL-виклики по усій вікі.

Оновлення кешу[]

  • Якщо ви бачите дивний результат роботи DPL, спробуйте додати ?action=purge (або &action=purge, у випадку коли ? вже використаний) в кінець вашого URL і перезавантажте URL.
    • Це може виправити проблему, коли внутрішній код DPL був змінений, але кеш сервера ще не оновився.

Приклади використання DPL[]

Галереї[]

DPL можна використовувати для формування галерей:

<DPL>
    namespace          = File
    category           = CategoryNameHere
    format             = <gallery widths="150" spacing="small">,%PAGE%\n,,</gallery>
    allowcachedresults = true
</DPL>

Списки[]

Можна складати список сторінок, які необхідно відредагувати:

<DPL>
    category           = Stubs
    format             = ,#%PAGE%\n,,
    allowcachedresults = true
</DPL>

Можна скласти список зображень, які необхідно категоризовати:

<DPL>
    namespace = File
    notcategory = Season 1
    notcategory = Season 2
    notcategory = Season 3
    notcategory = Season 4
    format = <gallery widths="150" spacing="small">,%PAGE%\n,,</gallery>
    allowcachedresults = true
</DPL>

Примітки[]

  • Фандом не підтримує функції DPL, засновані на кількості переглядів сторінок.
  • Для оновлення DPL потрібно оновити не тільки кеш браузера, але і кеш серверу.