Includes sind Anweisungen an das Wiki, andere Seiten oder Teile von anderen Seiten auf der aktuellen Seite an der Stelle der Include-Anweisung einzufügen. Die Include-Anweisung selbst wird also durch einen Teil einer anderen Seite ersetzt.
Includes können auch verschachtelt werden, d.h. es können auch Seiten eingebunden werden, welche wiederum andere Seiten einbinden. Die maximale Verschachtelungstiefe ist auf 8 begrenzt.
Syntax
{{include|Seite#Teil|Text|Argumente}} {{:include|Seite#Teil|Text|Argumente}} {{CodeInclude|Seite#Teil}}
Wenn Text unterhalb der Include-Anweisung angezeigt wird, erscheint dahinter standardmässig ein Info-Symbol . Mit einem Klick auf dieses Symbol gelangt man zur includeten Seite. Soll dieses Info-Symbol nicht angezeigt werden, muss man vor include einen Doppelpunkt : setzen.
Die CodeInclude Anweisung kann verwendet werden um innerhalb eines <code>-Tag Inhalt einer Seite zu Includen. Der Inhalt wird nicht formatiert und angezeigt wie er in der Include-Page steht (Wikitext).
<code> {{CodeInclude|Seite#code}} </code>
Es besteht die Möglichkeit, nur Teile einer Wiki-Seite in einer anderen einzufügen. Dazu müssen in der referenzierten Seite bestimmte Teile definiert werden. Jeder Teil muss zwischen den Makros {{data}} und {{end data}} stehen. Die Teile werden intern durchnummeriert. Auf die ganze Seite kann im Include mit Seite#0 zugegriffen werden. #0 ist Default und kann auch weggelassen werden. Auf den ersten Teil zwischen {{data}} und {{end data}} kann mit #1 zugegriffen werden usw. Existiert ein Teil nicht, wird nichts (ein Leerstring) eingefügt.
Beispiele
{{include|Meine Tabelle}} oder {{include|Meine Tabelle#0}}
fügt die ganze Seite «Meine Tabelle» in der Seite ein.
{{include|Meine Tabelle#1}}
fügt nur den Teil der Seite «Meine Tabelle» in der Seite ein, der zwischen dem ersten {{data}} / {{end data}} steht.
Wenn die Reihenfolge der Teile in einer referenzierten Seite geändert wird, müssen alle betroffenen Include-Anweisungen angepasst werden. Um dies zu verhindern, können die Teile auch benannt werden und im Include kann auf die Namen der Teile verwiesen werden:
In der referenzierten Seite «Auswertung» steht:
{{data|Tabelle}} <hier würde eine Tabelle stehen> {{end data|Tabelle}} {{data|Beschreibung}} <hier würde eine Beschreibung stehen> {{end data|Beschreibung}}
auf der Seite mit dem Include steht:
{{include|Auswertung#Tabelle}} {{include|Auswertung#Beschreibung}}
Auf diese Art benannte Teile können auf der Seite «Auswertung» beliebig angeordnet werden, ohne dass die Seite mit der Include-Anweisung angepasst werden müsste.
Wenn man per URL einen einen der beiden Bereichen auswählen will, kann man ein Include wiefolgt definieren:
{{include|Auswertung#$Tabelle}}
Wenn in der URL ein Parameter Tabelle definiert ist, wird dessen Wert als Include-Bereich genommen. So kann man zum Beispiel mit der URL [[Seitenname~Tabelle=Beschreibung]] erreichen, dass anstelle der Tabelle die Beschreibung includet wird.
Wenn du bestimmte Wiki-Anweisungen, wie eigene Makros oder Styles, in vielen Seiten immer wieder benötigst, bietet es sich an, diese in die spezielle Seite «Spezial:CommonDefs» zu schreiben. Diese Seite wird automatisch am Anfang jeder Wiki-Seite eingebunden, ohne dass eine Include-Anweisung dafür vorhanden sein muss.
Für Bilder ist es in Wikis Standard, dass zu jedem Bild eine Info-Seite erstellt wird, in der zusätzliche Informationen zum Bild stehen (Quelle, wie, wo, wann erstellt usw.). Solche Info-Seiten haben u.a. den Vorteil, dass man nach ihnen suchen kann. Da alle Bild-Infoseiten im Seitennamen mit «Bild:» beginnen, kann eine Liste aller Bilder erstellt werden, indem eine Titelsuche mit «Bild:» gemacht wird (im Suchfeld in der Wiki-Toolbar «Bild:» eingeben und auf «im Titel» klicken).
Solche Info-Seiten sind auch sehr praktisch für Tabellen, Zitate usw. Nehmen wir an, du möchtest einen Jahresbericht schreiben, in welchem eine Bilanz in Tabellenform enthalten ist. Den Jahresbericht schreibst du auf der Seite «Jahresbericht 2005». An der Stelle, wo die Bilanz-Tabelle stehen soll, schreibst du nun folgende Anweisung:
{{include|Tabelle: Bilanz 2005#1|}}
Nach dem Speichern der Seite «Jahresbericht 2005» wird an der Stelle des Includes folgender roter Link angezeigt:
include:Tabelle: Bilanz 2005#1
Der rote Link zeigt an, dass die Seite «Tabelle: Bilanz 2005» noch nicht existiert. Mit einem Klick auf diesen Link wird die Seite «Tabelle: Bilanz 2005» erzeugt und du kannst dort die Tabelle eingeben. Setze vor die Tabelle das Makro {{data}} und dahinter {{end data}}, damit in die Seite «Jahresbericht 2005» nur die Tabelle eingefügt wird. Vor {{data}} und hinter {{end data}} kannst du beliebige weitere Informationen zur Tabelle einfügen, welche aber nicht in die Include-Seite kopiert werden.
Sobald die Seite «Tabelle: Bilanz 2005» gespeichert wird, erscheint auf der Seite «Jahresbericht 2005» anstelle des roten Links die per Include eingefügte Tabelle.
Auf diese Weise gibt es für jede Tabelle eine eigene Info-Seite und man kann nach allen Tabellen suchen, wie nach Bildern. Jede Tabelle ist nur ein einziges Mal vorhanden, kann aber in beliebig viele Seiten per Include eingebunden werden. Änderungen an einer Tabelle zeigen sich so unmittelbar in allen Seiten, in welche die Tabelle includet wird.
Der | am Ende der Include-Anweiung bewirkt, dass der Text vor dem | unterhalb der eingefügten Tabelle angezeigt wird. Ohne diesen | am Ende wird unterhalb der Include-Anweisung kein Text angezeigt. Ein Klick auf das Info-Symbol führt zur Info-Seite der Tabelle, also zu «Tabelle: Bilanz 2005». Wenn du einen anderen Text unterhalb der Tabelle stehen haben willst, gibst du diesen einfach hinter dem | ein.
Gerade wenn du viele Tabellen in einer Arbeit brauchst, machst du Gebrauch von Styles, um die Tabellen optisch zu gestalten. Wenn du mehrere Tabellen auf verschiedenen Seiten mit denselben Styles gestalten willst, bieten sich Includes an, um die Styles in einer separaten Seite zu speichern und sie per Include einzubinden. So können Änderungen zentral an einer Stelle gemacht werden und diese wirken sich unmittelbar auf alle Tabellen aus.
Beispiel
In der Seite «Spezial: Tabellen Styles» seien die folgenden Zeilen abgelegt:
<style> .Wiki table.myTab { font-size:smaller; border:2px solid blue; } .Wiki table.myTab th { text-align:left; } </style>
Die Seite «Spezial: Tabellen Styles» wird nun vor jeder Tabelle oder am Anfang der entsprechenden Seite wiefolgt eingebunden:
{{include|Spezial: Tabellen Styles}}
Hinweis: Durch voransetzen von Spezial: vor einen Seitennamen kann erreicht werden, dass diese Seite vor dem User verborgen bleibt (z.B. bei Suchfunktionen).
Wenn man zum Beispiel eine Include-Seite hat, in der ein User verschiedene Programme oder Texte erstellen darf, wibei aber jeweils nur ein Programm oder Text included werden soll, so kann der User jedem Bereich einen eindeutigen Namen bei den Makros {{data}} geben.
In der Aufrufenden Seite kann per URL Parameter einer der benannten Bereiche ausgewählt werden. Das enstprechende Include sieht wiefolgt aus:
Include Seite:
{{Include|Spezial: User Seite#$choice}}
In der Seite Spezial: User Seite stehen dann folgende Abschnitte:
{{data|choice}} default Bereich {{end data|choice}} {{data|last}} letzter Bereich {{end data|last}}
Aufruf der Include Seite um einen bestimmten Bereich zu includen:
[[Include Seite~choice=last]]
Eine nützliche Sache ist, dass man der Include-Anweisung auch Argumente übergeben kann. In der Seite, die mit Include eingefügt wird, können an beliebigen Stellen Platzhalter stehen, welche vor dem Einfügen der Seite durch die entsprechenden Argumente ersetzt werden. Dadurch kann ein Include noch vielseitiger eingesetzt werden.
In der referenzierten Seite setzt du mit folgender Syntax Platzhalter:
((x=Default)) oder ((x=#Number))
Vom Seitennamen können auch Teile vor einem Doppelpunk oder in Klammern am Ende weggefiltert werden:
Seitenname ((0)) ((00)) ((000)) --------------------------------------------------------------- Makro:include Makro:include include include Müller (Beruf) Müller (Beruf) Müller Müller Bild:DSC00123.jpg Bild:DSC00123.jpg DSC00123.jpg DSC00123
Bild-Infoseiten haben oft denselben Aufbau und unterscheiden sich lediglich im Bild, das angezeigt wird, und im Kommentar. Es bietet sich also an, den Wiki-Text für eine Bild-Infoseite in einer Include-Seite zu speichern und den individuellen Text als Argument zu übergeben. Auf den Bild-Dateinamen kann in der Include-Seite über den Platzhalter ((00)) oder ((000)) zugegriffen werden, je nachdem, ob man die Erweiterung des Dateinamens benötigt oder nicht.
So könnte die Include-Seite «Spezial: Bildinfo» für eine Bild-Infoseite aussehen:
[[:Bild:((000)).jpg|zoom=((000))_zoom.jpg|300px|lframed|((1=Bild-Text))]] {{Information|Informationen zum Bild | Beschreibung = ((2)) | Autor = [[wabis]] | Quelle = selbst fotografiert | Datum = Juli 2005 | Fotoapparat = Digitalkamera Sony F828 }} {{break}} {{Bild-PD}}
Und so so würde diese Include-Seite «Spezial: Bildinfo» in die Bild-Infoseite «Bild:Landschaft.jpg» eingebunden:
{{include|Spezial: Bildinfo|-|Kurztext für Bild|Beschreibung des Bildes}} ^ ^ ^ ^ Include * ((1)) ((2))
*) Damit kein Text an der Stelle des Includes-Makros auf der Bild-Infoseite erscheint, muss hier ein «-», Leerzeichen oder Return eingegeben werden!
Beachte, dass an Stelle von ((000)) in «Spezial: Bildinfo» der Bildname «Landschaft» eingesetzt wird. Der Bildname muss also nicht explizit als Argument übergeben werden, da er mit ((000)) aus dem Seitennamen «Bild:Landschaft.jpg» abgeleitet werden kann. Wenn ein Zoombild existiert und dieses entsprechend benannt ist, kann sogar das Zoombild ebenfalls wie im obigen Beispiel so eingebunden werden.