Extension:DynamicPageList3/cs

Rozšíření DynamicPageList3 je nástroj pro vytváření zpráv pro MediaWiki, který uvádí členy kategorií a průniky s různými formáty a podrobnostmi. Úplnou dokumentaci naleznete v příručce.

Při vyvolání se základní sadou parametrů výběru DPL zobrazí seznam stránek v jedné nebo více kategoriích. Výběr může být také založen na faktorech, jako je autor, jmenný prostor, datum, vzor názvu, použití šablon nebo odkazy na jiné články. Výstup má různé formy, z nichž některé obsahují prvky vybraných článků.

Toto rozšíření je vyvoláno funkcí analyzátoru  nebo tagem analyzátoru. Implementaci určitých funkcí kompatibilních s Wikimedií lze vyvolat pomocí.

Složité vyhledávání může mít za následek výpočetně nákladné databázové dotazy. Ve výchozím nastavení je však veškerý výstup ukládán do mezipaměti po dobu jedné hodiny, aby se snížila potřeba opakovat dotaz při každém načtení stránky. Příručka DPL:Parameters: Other Parameters obsahuje informace o parametrech, které lze použít k deaktivaci mezipaměti a k umožnění okamžitých aktualizací.


 * Příručka a kompletní dokumentace
 * Dokumentace na Gamepedia Help Wiki


 * Zdrojový kód


 * Chyby a požadavky na funkce na GitHubu


 * Licence
 * DynamicPageList3 je vydán pod GNU General Public License, verze 3.

Konfigurace
Toto jsou konfigurační nastavení DPL3 spolu s jejich výchozími hodnotami.

Chcete-li je změnit, ujistěte se, že jsou definovány před přidáním rozšíření na wiki.

DPL3 automaticky respektuje globální proměnnou.

Zabrání tomu, aby se obsah uvedených jmenných prostorů objevil ve výstupu DPL3.



Funkční bohatství
DynamicPageList3 má mnoho funkcí, které se odemykají na základě maximální úrovně funkčnosti.

Některé mohou způsobit vysoké zatížení procesoru nebo databáze a měly by být používány střídmě.
 * - ekvivalent (průsečík) Wikimedie
 * - přidává další parametry formátování
 * - přidává funkce ekvivalentní výkonu pro šablony a odkazy na stránky
 * - umožňuje vzácnější funkce vkládání stránek a dotazy na regulární výrazy
 * - umožňuje exotické a potenciálně nebezpečné operace dávkové aktualizace a mazání; nedoporučuje se pro veřejné weby. Zahrnuje parametry ladění pro testování a vývoj.

Použití


Rozšířená funkčnost DPL
Rozšířené DPL se vyvolá pomocí funkce analyzátoru  nebo tagu rozšíření analyzátoru .
 * Viz Příručka - Obecné použití a syntaxe vyvolání a DPL:Parameters: Kritéria pro výběr stránky



Zpětná kompatibilita
Funkčnost kompatibilní s rozšířením DPL Wikimedia lze vyvolat na .

Další informace lze nalézt na příručce o kompatibilitě.



Filozofie použití a přehled
Za předpokladu, že existují články napsané o "zemích", tyto články budou mít obvykle tři společné věci:
 * Budou patřit do společné kategorie
 * Budou mít podobnou strukturu kapitol, tj. budou obsahovat odstavce s názvem 'Religion' (náboženství) nebo 'History' (historie).
 * Budou používat šablonu, která se používá k prezentaci vysoce strukturovaných krátkých datových položek ('Capital' (kapitál), 'Inhabitants' (obyvatelé), ..) vhodným způsobem (např. jako wikitable)



Vytvoření zprávy podle zemí
Pokud by bylo potřeba sestavit zprávu o tom, které země vyznávají určité náboženství, lze to snadno provést pomocí parametrů  a.

S DPL by bylo možné:


 * Vygenerujte seznam všech těchto článků (nebo náhodný vzorek)
 * Zobrazí metadata článků (oblíbenost, datum poslední aktualizace, ..)
 * Zobrazí jednu nebo více kapitol článků (přeloží obsah)
 * Zobrazí hodnoty parametrů, které jsou předány společné šabloně
 * Vhodně řadí články
 * Prezentujte výsledek v setříditelné tabulce (např.)
 * Generování výstupu s více sloupci



Jaké kroky jsou nutné?
Najděte články, které chcete uvést:


 * Vybírejte podle logické kombinace (A, NEBO, NE) kategorií
 * Zadejte rozsah počtu kategorií, do kterých musí být článek zařazen
 * Vybírejte pomocí logické kombinace (AND,OR,NOT) jmenných prostorů
 * Definujte vzor, který se musí shodovat s názvem článku
 * Pojmenujte stránku, na kterou článek musí nebo nesmí odkazovat
 * Pojmenujte šablonu, kterou článek musí nebo nesmí používat
 * Pojmenujte textový vzor, který se musí vyskytovat v externích odkazech ze stránky
 * Vyloučit nebo zahrnout přesměrování
 * Omezte vyhledávání na stabilní stránky nebo stránky kvality ("označené revize")
 * Pro výběr použijte další kritéria, jako je autor, datum poslední změny atd.
 * Definujte regulární výrazy tak, aby odpovídaly obsahu stránek, které chcete zahrnout

Řaďte výsledkovou listinu článků podle


 * Název článku
 * Velikost článku
 * Datum poslední změny
 * Poslední uživatel, který provedl úpravu

Definujte atributy, které chcete vidět


 * Název článku
 * Jmenný prostor článku
 * Velikost článku
 * Datum poslední změny
 * Datum posledního přístupu
 * Poslední uživatel, který provedl úpravu

Definujte obsah, který chcete zobrazit


 * Celý článek
 * Obsah určitých sekcí (označených nadpisy)
 * Textové části (definované speciálními značkami v článku)
 * Hodnoty volání šablon
 * K zobrazení výstupu použijte vlastní šablonu

Definujte výstupní formát


 * Zadejte záhlaví a zápatí pro výchozí výstup
 * Použít uspořádaný seznam, neuspořádaný seznam
 * Použijte tabulky
 * Formátujte pole tabulky jednotlivě použitím šablon na jejich obsah
 * Použijte seznam ve stylu kategorie
 * Přidejte odkaz na článek nebo na jednu či více jeho částí
 * Přidejte odkaz na článek nebo na jednu či více jeho částí

Performance
DPL3's code execution and database access is typically fast for typical category and article look ups.

However, using loose LIKE and REGEXP match parameters and/or requesting large data sets can result in long database access times.

Parser time should also be kept in consideration.

For example, having the query of image results go into a template that displays them will result in a parser media transform for each one.

This can quickly eat up 2MBs of RAM per media transform.

Version 3.4.0 introduces two new configuration options,, which allows configuration the max execution length for queries, in milliseconds, and , which allows configuration of query cache. It also adds support for PoolCounter to limit query concurrency.