Vorlagenprogrammierung | Diskussionen | Lua | Unterseiten | |||
Modul | Deutsch | English
|
Modul: | Dokumentation |
PageAttributes
– Modul zur Hinterlegung von Attributen, bezogen auf einzelne Seiten oder ganze Namensräume.
Funktionen für Vorlagen
- f
- Abfrage zu einer Seite
- Parameter:
- 1
- Kennung der Gruppe = Namenskomponente des Unter-Moduls
- (Pflichtparameter)
- 2
- Name einer Seite
- Beginnend mit
#
und nachfolgend Ziffern: Seitenkennnummer - (optional) Vorgabe: aktuelle Seite
- Rückgabewert:
- Hinterlegter Attributwert
1
fürtrue
- leer für
false
oder nichts hinterlegt oder Gruppe unbekannt - failsafe
- Versionsmanagement
Die Failsafe-Schnittstelle erlaubt den damit ausgerüsteten Modulen in globaler Verteilung
- sicherzustellen, dass eine von einer Vorlage oder einem Modul benötigte Funktion in der lokalen Kopie eines Bibliotheksmoduls vorhanden ist, und ggf. auch in einer erforderlichen Mindestversion;
- die globale Aktualisierung und Verknüpfung von Modulen über Wikidata zu verwalten.
Die Failsafe-Schnittstelle liegt sowohl auf Ebene der Vorlagen wie auch in direktem Lua-Zugriff vor.
Die Funktionen sind im Einzelnen (nicht alle werden bereits überall in vollem Umfang unterstützt):
Wert | Ergebnis | aktuell |
---|---|---|
nichtsfalse
|
lokale Version | »2022-06-06« |
Mindestversion | Mindestversionsbezeichnung Datum im ISO-Format Es wird verglichen, ob das aktuelle Modul diese Version oder später erfüllt.
|
|
wikidata
|
Versionsbezeichnung der globalen Mutter (d:Q112249306)
|
»2022-06-06« |
item
|
ID des Wikidata-Items
|
»Q112249306« |
~
|
Übereinstimmung der lokalen mit der auf Wikidata registrierten Versionsbezeichnung
|
»« |
@
|
Ist die aktuelle (Modul-)Seite richtig mit Wikidata verknüpft?
|
|
Der Rückgabewert ist in der Vorlagenprogrammierung leer und per Lua false ; andernfalls die angegebene Zeichenkette.
|
Unter-Module für Gruppen
Eine Gruppe von Eigenschaften kann über ein Unter-Modul definiert werden.
- Der Name muss eine direkte Unterseite des Stamm-Moduls im Wiki sein.
- Zukünftig kämen mit JSON auch andere Namensräume in Frage.
- Es wird vom Typ
mw.loadData
erwartet (kann jedoch zukünftig auch mittels JSON spezifiziert werden). - Es kann folgende Komponenten zurückgeben:
rooms
– table- Zuweisungen an Namensraum-Nummern
pageids
– table- Zuweisungen an Kennnummern einzelner Seiten
failsafe
– string- Versionsbezeichnung
Allgemeine Hinweise zur Einbindung von Modulen
Eine Einbindung erfolgt jeweils im Format
{{#invoke: PageAttributes |
Funktionsname | Wert1 | Wert2 | NameX=Wert … }}
Die Parameter können wie bei Vorlagen benannt oder unbenannt sein; deren Regeln gelten analog.
Wenn unbekannte Zeichenketten von außen kommen (als Vorlagenparameter), sollte immer mit der Form 1=
Wert gearbeitet werden.
Zu allgemeinen Problemen beachte die Abhilfen wie bei Vorlagen.
Wenn in einer Vorlage ein Modul verwendet wird, sollte auch immer die Vorlage:Dokumentation/Lua in der Dokumentationsseite eingebunden werden.
- Das gibt einem Programmierer Aufschluss, dass ein Lua-Modul benutzt wird, welche/s und ggf. welche Einzelfunktion daraus, und verlinkt auf die Dokumentation.
- Die Modul-Dokumentationen bekommen ein Link, in welchen Vorlagen sie eingesetzt werden, und wo bei eventuellen Funktionsänderungen Anpassungen erforderlich werden.
- Die Vorlage wird zur Übersicht kategorisiert in Kategorie:Vorlage:mit Lua-Programmierung.
Zu weiteren Informationen siehe Hilfe:Lua.
Bei Problemen wende dich bitte an die Vorlagen-Werkstatt, in schweren Fällen hilft auch die Lua-Werkstatt.