Extension:Subpage Fun
Stav rozšíření: stabilní |
|
|---|---|
| Implementace | Funkce analyzátoru, Proměnná |
| Popis | Definuje některé nové funkce parseru pro získání pokročilých informací o podstránkách. |
| Autoři | Daniel Werner (Danwediskuse) |
| Nejnovější verze | 0.7.0 (2020-02-16) |
| MediaWiki | 1.25+ |
| Změny v databázi | Ne |
| Licence | Licence ISC |
| Stáhnout | README RELEASE-NOTES |
| Přeložte rozšíření Subpage Fun, používá-li lokalizaci z translatewiki.net | |
Rozšíření Subpage Fun poskytuje vaší wiki sedm nových parserových funkcí/proměnných pro získání informací o podstránkách, které nelze získat pomocí stávajících magických slov MediaWiki. Toto rozšíření má také trochu odlišný koncept toho, co se považuje za podstránku, než stávající funkce MediaWiki.
Téměř vše, co potřebujete vědět o podstránkách MediaWiki, si můžete přečíst zde.
Toto rozšíření jde ještě o krok dál a říká, že podstránka není jen část za lomítkem (/).
Stránka je podstránkou pouze v případě, že existuje nadřazená stránka.
To znamená, že Subpage Fun nebude považovat stránku AC/DC za podstránku, dokud stránka AC neexistuje.
Za předpokladu, že stránka AC/DC/Discography existuje, stránka AC/DC/Discography/1975/1976 by měla hodnotu {{SUBPAGETITLE}} 1975/1976.
Proměnná MediaWiki {{SUBPAGENAME}} by v tomto případě vypsala pouze 1976, což je nesmysl, protože tato stránka ani neexistuje.
Pro vývojáře toto rozšíření poskytuje PHP třídu SubpageInfo, která může být užitečná pro shromažďování informací o podstránkách v rámci jiných rozšíření.
Použití
Subpage Fun definuje {{SUBPAGETITLE}}, {{SUBPAGES}}, {{PARENTPAGES}}, {{SIBLINGPAGES}}, {{NUMBEROFSUBPAGES}}, {{TOPLEVELPAGE}}.
Můžete je použít buď jako proměnné pro aktuální stránku, nebo je můžete použít s parametrem, jako je {{NUMBEROFSUBPAGES: Pagename}}, a použít je pro libovolnou stránku.
- SUBPAGETITLE
- Skutečný název podstránky, nejen část za posledním lomítkem (
/), jako je tomu u MediaWiki, kde je vypsáno lomítkemSUBPAGENAME. - SUBPAGELEVEL
- Úroveň podstránky stránky. Normální stránka, která vůbec není podstránkou, by vrátila hodnotu
0. - NUMBEROFSUBPAGES
- Kolik podstránek má stránka. Pracuje také s podstránkami, aby se zjistilo, kolik podstránek mají. Počítá všechny podřízené stránky, nejen přímé podřízené stránky.
- TOPLEVELPAGE
- Stránka nejvyšší úrovně, což je stránka s podstránkou úrovně
0v rámci stejného stromu podstránek. - SUBPAGES
- Vypíše všechny podstránky jako seznam oddělený čárkami. To znamená všechny podřízené stránky, nejen přímé podřízené stránky. Výstup nemá žádné konkrétní pořadí.
- PARENTPAGES
- Vypíše všechny stránky předků jako seznam oddělený čárkami. Výstup začíná stránkou nejvyšší úrovně a končí přímo nadřazenou stránkou.
- SIBLINGPAGES
- Vypíše všechny stránky stejné úrovně podstránek a stromu jako seznam oddělený čárkami. Výstup nemá žádné konkrétní pořadí.
{{SUBPAGES}}, {{PARENTPAGES}}, {{SIBLINGPAGES}} má výstup seznamu.
Tento výstup můžete použít pro další použití například s Rozšíření:Arrays.
Pokud je jedna funkce použita s parametrem 1 na stránce s neplatnými znaky, výstupní hodnotou bude prázdný řetězec.
Pokročilé formátování
Kromě parametru 1, který je k dispozici pro všechny funkce a umožňuje definovat stránku, ze které se mají informace získat, existuje pro některé funkce několik dalších parametrů.
- linked
- Pokud má tento parametr nějakou hodnotu na všech stránkách v seznamu generujících seznam funkcí, stanou se odkazy.
- sep
- Umožňuje definovat jiný oddělovač seznamu než výchozí oddělovač
, - depth
- Funguje s
{{SUBPAGES}},{{NUMBEROFSUBPAGES}},{{PARENTPAGES}}. Umožňuje definovat relativní hloubku k nejvzdálenější stránce. Pokud je hloubka nastavena na hodnotu menší než 0 nebo není nastavena, funkce vypíší vše. Pro hodnotu{{PARENTPAGES}}záporná hodnota vrátí tento počet prvků počínaje stránkou nejvyšší úrovně. - filter
- Funguje s
{{SUBPAGES}},{{PARENTPAGES}},{{SIBLINGPAGES}},{{NUMBEROFSUBPAGES}}. Tento parametr umožňuje definovat regulární výraz (povolené oddělovače/%|, povolené modifikátoryimsSuUx), který odfiltruje ze seznamu všechny prvky, které neodpovídají výrazu. Alternativně je možné definovat jednoduché slovo, které musí být součástí položky seznamu, jinak se položka nezobrazí. Je možné definovat několik slov oddělených escapovaným znakem|, například pomocí šablony jako Template:! s použitím{{!}}.
{{PARENTPAGES: linked=true |depth=1}}vypíše přímou nadřazenou stránku aktuální stránky jako odkaz.{{PARENTPAGES: <page> |depth=-1}}vrátí stejný výsledek jako{{TOPLEVELPAGE}}s jediným rozdílem, že pokud<page>již představuje stránku nejvyšší úrovně, vrátí se prázdný řetězec.{{SUBPAGES: somepage |depth=1 |sep=<nowiki> </nowiki>}}vypíše všechny přímé podstránky pod somepage oddělené jednoduchou mezerou.
Podpora pro vývojáře
Vývojáři mohou použít některé statické PHP funkce z třídy SubpageInfo, které poskytují informace o podstránkách, jež třída MediaWiki Title neposkytuje.
Instalace
- Stáhněte soubor/y a vložte je do adresáře pojmenovaného
SubpageFunve vaší složceextensions/.
Vývojáři a přispěvatelé kódu by si místo toho měli nainstalovat rozšíření from Git pomocí:cd extensions/ git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/SubpageFun
- Na konec vašeho souboru LocalSettings.php přidejte následující kód:
wfLoadExtension( 'SubpageFun' );
Dokončeno – Přejděte na stránku Special:Version vaší wiki a zkontrolujte, zda bylo rozšíření úspěšně nainstalováno.
Související odkazy
- SubPageList – umožňuje vypsat a počíst podstránky.
- SubpageNavigation – zobrazuje přímé podstránky aktuální stránky v záhlaví článku a poskytuje speciální podstránky Procházení stránek pro procházení všech článků wiki různými způsoby.
| Toto rozšíření je zahrnuto v následujících wiki farmách/hostitelích a/nebo balíčcích: |
- Stable extensions/cs
- Parser function extensions/cs
- Variable extensions/cs
- GetThisVariableValueSwitch extensions/cs
- MagicWordwgVariableIDs extensions/cs
- ParserFirstCallInit extensions/cs
- ParserGetVariableValueSwitch extensions/cs
- ISC licensed extensions/cs
- Extensions in Wikimedia version control/cs
- All extensions/cs
- Extensions included in Miraheze/cs
- Extensions included in MyWikis/cs
- Subpage extensions/cs
