Hilfe:Wiki/MediaWiki/Vorlagen/Vorlagen erstellen

Aus SELFHTML-Wiki
Wechseln zu: Navigation, Suche

Eine Vorlage ist eine Seite, die sich als Textbaustein verwenden lässt, d. h. als vorgefertigter Text, der in einen anderen Text eingefügt wird. Diese Seite beschäftigt sich mit der allgemeinen Verwendung und Erstellung von Vorlagen. Die für das SELFHTML-Wiki verfügbaren Vorlagen sind auf den Seiten Kategorie:!Vorlagen und Hilfe:Wiki/MediaWiki/Vorlagen beschrieben.

Vorlagen erzeugen und bearbeiten

Vorlagen werden wie jede andere Wiki-Seite erzeugt, sie führen stets den Präfix Vorlage: vor ihrem Namen: [[Vorlage:Name]].

Eine Vorlage wird wie eine normale Seite bearbeitet. Vorlagen können geschachtelt werden, d. h. innerhalb einer Vorlage können weitere Vorlagen verwendet werden.

Alle in eine Seite eingebundenen Vorlagen werden als Links unter dem Bearbeiten-Fenster aufgelistet. Gerade entfernte Vorlagen werden dort weiterhin bis zum nächsten Speichern angezeigt.

Verbindliche Hinweise zur farblichen Gestaltung finden sich unter Hilfe:Farbtabelle.

Eine Übersicht bestehender Vorlagen finden Sie unter Hilfe:Wiki/MediaWiki/Vorlagen.

Vorlagen verwenden

Vorlagen werden mit jeweils zwei geschweiften Klammern umrahmt. Um eine Vorlage in einem Artikel zu verwenden gibt es vier Möglichkeiten:

  1. {{Vorlage:Titel}} fügt die Vorlage Vorlage:Titel in die Seite ein. Die Verwendung des Präfixes Vorlage: ist beim Einfügen einer Vorlage optional. Beim Anzeigen der Seite ersetzt die MediaWiki-Software dies dann durch den Inhalt der Vorlage „Titel“. Ändert jemand die Vorlage, ändert sich dadurch auch die Darstellung.
  2. {{subst:Titel}} fügt ebenfalls den Inhalt der Vorlage ein, ersetzt den Text jedoch direkt beim Speichern. Auf diese Art kann zum Beispiel einer Reihe von Seiten ein immer gleiches Grundgerüst gegeben werden, ohne dies jeweils hineinkopieren zu müssen; der Bearbeiter muss dann schließlich "nur noch" seinen Text hinzufügen.
  3. {{msgnw:Name}} bindet den Inhalt der Vorlage bei jedem neuen Aufruf der Seite erneut ein. Ändert sich die Vorlage, ändert sich die Einfügung. Allerdings wird der Code unverarbeitet dargestellt (wie bei <nowiki></nowiki>).
  4. Seiten, die nicht im Namensraum Vorlage stehen, lassen sich ebenfalls als Vorlage verwenden, wenn man den Namensraum angibt. Zum Beispiel würde {{Hilfe:Suche}} die Seite Hilfe:Suche einbinden. Will man eine Seite aus dem Artikelnamensraum einbinden, muss man einen Doppelpunkt vor den Namen setzen: So würde {{:Test}} beispielsweise den Artikel Test als Vorlage einbinden. Üben Sie das am Besten auf Ihrer Spielwiese :-).

Alles, was in einer Vorlage zwischen <includeonly> und </includeonly> steht wird nur dann angezeigt, wenn die Vorlage auf einer anderen Seite eingebunden ist. Mit <includeonly>[[Kategorie:Sammelwut]]></includeonly> lassen sich alle Seiten, die eine bestimmte Vorlage enthalten, einer Kategorie (im Beispiel der Kategorie Sammelwut) hinzufügen.

Alles, was in einer Vorlage zwischen <noinclude> und </noinclude> steht, wird dagegen nur dann angezeigt, wenn die Vorlage direkt betrachtet wird. Mit <noinclude> lassen sich so Vorlagen kategorisieren oder eine Erklärung anfügen, wie die Vorlage verwendet wird.

Parameter einfügen und verwenden

Sollen in einer Vorlage Inhalte auftauchen, die sich von Seite zu Seite ändern, zum Beispiel ein zusätzlicher Text in der imaginären [[Vorlage:Blub]], dann geschieht das mit Parametern.

In der Vorlage Blub kennzeichnen drei geschweifte Klammern durchnummerierte Platzhalter:

Nach Angaben von {{{1}}} ist dieser Spinat von der Firma {{{2}}}.

Die Verwendung von {{Blub|Popeye|Oglu}} führt zu folgendem Ergebnis:

Nach Angaben von Popeye ist dieser Spinat von der Firma Oglu.

In der Vorlage Blub kennzeichnen drei geschweifte Klammern frei benannte Platzhalter:

Nach Angaben von {{{name}}} ist dieser Spinat von der Firma {{{firma}}}

Die Verwendung von {{Blub|name=Popeye|firma=Oglu}} führt zu folgendem Ergebnis:

Nach Angaben von Popeye ist dieser Spinat von der Firma Oglu.

Die Verwendung von frei benannten Parametern empfiehlt sich bei Vorlagen, die mehrere leicht verwechselbare Parameter enthalten.

Ein Parameter kann auch als Link anklickbar erscheinen, wenn er mit jeweils zwei eckigen Klammern (interner Wikilink) oder mit nur einem Paar eckiger Klammern (externer Link) umgeben ist: [[{{{1}}}]].

In der Vorlage Blub kennzeichnen drei geschweifte Klammern durchnummerierte Platzhalter. Der erste ist als interner Wikilink ausgezeichnet:

Nach Angaben von [[{{{1}}}]] ist dieser Spinat von der Firma {{{2}}}.

Das Einfügen von

{{Blub|Popeye|[http://spinat.example.com Oglu]}}.

ergibt:

Nach Angaben von Popeye ist dieser Spinat von der Firma Oglu.

Beachten Sie den Unterschied: Durch die Verwendung des doppelten Klammerpaares in der Vorlage ist der erste Eintrag stets und unvermeidbar ein interner Wikilink. Der zweite Parameter ist von sich aus kein Link. Er wurde jedoch durch die Eingabe des Parameters in Link-Syntax ein (hier: externer) Link.

Daneben existieren in MediaWiki auch einige vordefinierte Variablen, die als Parameter nützlich sind, um zum Beispiel den Namen der aktuellen Seite ({{PAGENAME}}) einzufügen.

Wenn ein Parameter nicht mit Inhalt befüllt wird, so erscheint der verwendete Code, also beispielsweise {{{1}}}. Vermeiden lässt sich dies, indem man einen Standardwert definiert:

Standardwert definieren

Man kann einen Parameter so definieren, dass eine Eingabe optional ist, ohne Eingabe wird ein vorher definierter Parameter eingesetzt. Dazu geben Sie innerhalb der dreifach geschweiften Klammern zunächst den Platzhalter ein, dann einen senkrechten Strich (|) und dann den definierten Parameterwert: Bei {{{1|{{PAGENAME}}}}} wird der eingegebene Parameter ausgegeben, ansonsten der Name des Artikels.

Problem: Gleichheitszeichen in Parametern

Wenn man einer Vorlage einen Parameter, der nur durch eine Zahl im Vorlagencode eingebunden ist, Text übergibt, der ein Gleichheitszeichen enthält, „denkt“ die MediaWiki-Software, man wolle den Parameter mit der Bezeichnung des Textes vor dem Gleichheitszeichen nehmen.

Dieses Problem taucht beispielsweise auf, wenn man eine URL, in welcher ein Gleichheitszeichen enthalten ist (http://example.com/seite.php?parameter=wert), mit einem Parameter verlinken will.

Um dieses Problem zu umgehen, muss man lediglich dem Parameter, in dem das = vorkommt, beispielsweise dem x-ten Parameter, x= voranstellen (wobei x durch die entsprechende Zahl zu ersetzen ist und der Name der Vorlage nicht mitzählt).

Statt: {{Beispielvorlage|http://example.com/seite.php?parameter=wert}}</nowiki>
Folgendes: {{Beispielvorlage|1=http://example.com/seite.php?parameter=wert}}

Ein weiteres Beispiel, wenn man dem Parameterinhalt einen style zuweisen möchte:

Statt: {{Beispielvorlage|erster Parameter|a<span style="font-size:1.5em">b</span>c}}
Folgendes: {{Beispielvorlage|erster Parameter|2=a<span style="font-size:1.5em">b</span>c}}

Problem: Senkrechter Strich in Parametern

Da das Zeichen „|“ zur Trennung von Parametern eingesetzt wird, kann es nicht direkt in Parameterwerten vorkommen. Damit man den senkrechten Strich, zum Beispiel als Tabellensyntax, in Parameterwerten verwenden kann, gibt es folgende spezielle Vorlagen, die ausschließlich in Parameterwerten eingesetzt werden sollten:

Parameter {{!}} {{!-}} {{!!}} {{!-!}} {{!+}} {{(!}} {{!)}}
Inhalt | |- || |-
|
|+ {| |}

Siehe auch

Einsatzmöglichkeiten

Vorlagen sind nur dann sinnvoll, wenn es von ihnen nur eine überschaubare Anzahl gibt, die sich Benutzer auch merken können. Insbesondere sollten Vorlagen nicht doppelt oder sehr ähnlich entstehen.

Vorlagen dienen zur:

  • Konsistenzmaximierung: Mit Vorlagen lässt sich ein einheitliches Erscheinungsbild erreichen, etwa Wikipedia-Vorlage Begriffsklärung.
  • Redundanzminimierung: Wenn der Inhalt zentral nur an einer Stelle festgelegt wird (d. h. in einer Vorlage), dann erscheint der Inhalt in allen Artikeln gleich, auch bei einer nachträglichen Änderung. Das mühselige und fehlerträchtige Übertragen einer Änderung in jeden Artikel entfällt. Beispiele sind hier die so genannten Wikipedia-Navigationsbausteine.
  • Workflowoptimierung: Mit einer Vorlage kann ein Wikiautor anderen Wikiautoren präzise mitteilen, in welche Richtung ein Artikel verbessert werden sollte. Ein Beispiel ist die Vorlage:ToDo. Bei der Verwendung der Vorlagen wird der Artikel automatisch in spezielle Kategorien eingetragen.
  • Codeoptimierung: Manche schöne Darstellung lässt sich nur mit einem unschönen Mix aus Wiki-Markup, HTML bzw. CSS erreichen. Der Artikelquellcode wird dann schnell unübersichtlich und verschreckt Wikianfänger, sich an der weiteren Verbesserung eines Artikels zu beteiligen. Hier kann eine Vorlage helfen, den Artikelquellcode lesbarer zu gestalten.

Sie sollten nicht dienen als:

  • Benutzersignaturen
  • Abkürzungen für lange Worte (z. B. {{CSS}} für Cascading Style Sheets)

Vorlagen dokumentieren

Vorlagen, die in normalen Artikeln verwendet werden, sollten so einfach gestaltet sein, dass Zweck und Anwendung unmittelbar verständlich sind. In jedem Fall ist eine Beschreibung ihrer Funktion notwendig, vorzugsweise direkt auf der Vorlagenseiten, eingeklammert von <noinclude></noinclude>. Der öffnende noinclude-Tag sollte direkt (ohne Zeilenumbruch) an den Code der Vorlage anschließen, um zu verhindern, dass der Zeilenumbruch beim Verwenden der Vorlage unerwünschte Abstände erzeugt.

Hinweis mit noinclude

Unter- oder oberhalb einer Vorlage kann mit den Befehl <noinclude> eine Kurzerklärung gegeben werden. Eine Kurzerklärung bietet sich an, wenn ein Parameterbeispiel ausreicht.

Ausführliche Dokumentation auf der Diskussionsseite

Für eine ausführliche Dokumentation eignet sich die Diskussionsseite einer Vorlage besser, insbesondere wenn Überschriften verwendet werden. Es wird folgende Gliederung empfohlen:

  • Funktion: Diese Vorlage dient dazu, einen Artikel zum Löschen vorzuschlagen
  • Verwendung: {{subst:Löschantrag}} ''Ihre Begründung'' --~~~~ ----

Um eine Reihe an Parametern zu erklären, ist es praktisch, den folgenden Code als Grundlage zu nehmen:

<div style="margin:1em; padding:1em; border:solid 1px #FF0040; background-color:#FFFFFF">
==Funktion==

Diese Vorlage tut dies und das.

==Parameter==

; Parameter 1: Dies.

; Parameter 2: Das.

</div>

Der Code erzeugt das Folgende:

Funktion

Diese Vorlage tut dies und das.

Parameter

Parameter 1
Dies.
Parameter 2
Das.

Falls noch weitere Punkte zur Vorlage erläutert werden müssen, erweitern Sie das Schema entsprechend.

Kategorisierung

Jede Vorlage sollte in eine Kategorie eingeordnet werden. Dabei ist zu beachten, dass dies innerhalb von <noinclude>...</noinclude> geschieht, damit nur die Vorlage der Kategorie zugeordnet wird und nicht alle Seiten, in denen die Vorlage verwendet wird.

Weblinks/Quellen