Benutzer:Stewie/ArrayList
ArrayFunctions – Beispiel und Erklärung
Diese Seite demonstriert die wichtigsten Parserfunktionen der Extension ArrayFunctions in MediaWiki. Jede Funktion wird kurz erklärt, mit einem Beispiel und dem erwarteten Ergebnis. (WIP)
1. #af_list
– Erstellt eine Liste
Beschreibung: Erstellt ein einfaches Array (Liste) aus mehreren Werten.
Beispiel:
{{#af_list: Apfel | Banane | Kirsche }}
Erwartetes Ergebniss:
["Apfel","Banane","Kirsche"]
2. #af_print
– Gibt den Inhalt eines Arrays aus
Beschreibung: Gibt den Inhalt eines Arrays zur Debug-Zwecken lesbar aus.
Beispiel:
{{#af_print: {{#af_list: Apfel | Banane | Kirsche }} }}
Ergebnis:
- 0: Apfel
- 1: Banane
- 2: Kirsche
3. #af_get
– Holt einen bestimmten Wert aus einem Array oder Objekt
Beschreibung: Gibt einen bestimmten Eintrag aus einer Liste (per numerischem Index) oder aus einem Objekt (per Schlüssel) zurück. 1 Element wäre dabei 0
Beispiel (Index aus einer Liste)
Wikitext:
{{#af_get: {{#af_list: a | b | c }} | 1 }}
Ergebnis: b
4. #af_foreach
– Iteriert über ein Array
Beschreibung: Erlaubt über jedes element zu gehen und damit etwas zu machen
Beispiel:
{{#af_foreach: {{#af_list: John | Steve | Harry }} | | name | Hello, {{{name}}}!<br/> }}
Ergebnis:
Hello, John!
Hello, Steve!
Hello, Harry!
5. #af_map
– Transformiert jedes Element
Beschreibung:
Beispiel:
{{#af_print: {{#af_map: {{#af_list: a | b | c }} | v | {{{v}}}-appended }} }}
Ergebnis:
- 0: a-appended
- 1: b-appended
- 2: c-appended
6. #af_object
– Erstellt ein Objekt
Beschreibung: Erstellt ein Objekt mit Schlüssel-Wert-Paaren.
Beispiel:
{{#af_print: {{#af_object: a=b | b=c | c=d }} }}
Ergebnis:
- a: b
- b: c
- c: d
7. #af_template
– Übergibt Daten an eine Vorlage
Beschreibung: Führt eine Vorlage mit Werten aus einem Array oder Objekt aus. Vorlage wäre hier: Vorlage:Echo
Beispiel:
{{#af_template: Echo | {{#af_list: a | b }} }}
Ergebnis: Echo: a Echo: b
Fazit
Mit der ArrayFunctions-Erweiterung kannst du Listen und Objekte in MediaWiki auf dynamische Weise manipulieren und anzeigen – besonders nützlich in Kombination mit Vorlagen oder Datenquellen wie Lua oder Semantic MediaWiki.