Zeile 1: |
Zeile 1: |
− | <noinclude> | + | <noinclude>Dies ist die Vorlage „WikilinkWeg“. Sie wandelt einen Wiki-Link im Format <nowiki>[[:Seitenname|Seitenname]]</nowiki> in einfachen Fließtext um (im Beispiel also: Seitenname). Diese Vorlage hat dieselbe Funktion wie <nowiki>{{PAGENAME}}</nowiki>, kann aber in Vorlagen eingesetzt werden, um auch Variablen wie <nowiki>{{{Variable}}}</nowiki> in Fließtexte zu wandeln. |
− | Dies ist die Vorlage „WikilinkWeg“. | |
| Sie sollte im folgenden Format genutzt werden: | | Sie sollte im folgenden Format genutzt werden: |
| + | <pre>{{WikilinkWeg|Zeichenkette}}</pre> |
| + | |
| + | Der Parameter "Zeichenkette" ist der umzuwandelnde Wiki-Link. |
| + | |
| + | ==Beispiele== |
| + | {| class="wikitable oben" |
| + | ! Zeichenkette vorher |
| + | ! Kommentar |
| + | ! Ergebnis WikilinkWeg |
| + | |- |
| + | | <nowiki>[[xxx]]</nowiki> |
| + | → [[xxx]] |
| + | | Ein simplier Wikilink |
| + | → Die Linkklammern werden entfernt |
| + | | <nowiki>{{ WikilinkWeg | [[xxx]] }}</nowiki> |
| + | → {{WikilinkWeg|[[xxx]]}} |
| + | |- |
| + | | <nowiki>[[xxx|yyy]]</nowiki> |
| + | → [[xxx|yyy]] |
| + | | Ein Wikilink mit Alternativtext |
| + | → Linkklammern und Alternativtext werden entfernt |
| + | | <nowiki>{{ WikilinkWeg | [[xxx|yyy]] }}</nowiki> |
| + | → {{WikilinkWeg|[[xxx|yyy]]}} |
| + | |- |
| + | | <nowiki>[[zzz:xxx|yyy]]</nowiki> |
| + | → [[zzz:xxx|yyy]] |
| + | | Ein Wikilink mit Namespace und Alternativtext |
| + | → Linkklammern, Namespace und Alternativtext werden entfernt |
| + | | <nowiki>{{ WikilinkWeg | [[zzz:xxx|yyy]] }}</nowiki> |
| + | → {{WikilinkWeg|[[zzz:xxx|yyy]]}} |
| + | |- |
| + | | <nowiki>[[:zzz:xxx]]</nowiki> |
| + | → [[:zzz:xxx]] |
| + | | Ein typischer Kategorie-Link mit zwei Doppelpunkten |
| + | → Alles bis zum hintersten Doppelpunkt wird entfernt (sowie die Linkklammern) |
| + | | <nowiki>{{ WikilinkWeg | [[:zzz:xxx]] }}</nowiki> |
| + | → {{WikilinkWeg|[[:zzz:xxx]]}} |
| + | |- |
| + | | <nowiki>[[xxx/sub]]</nowiki> |
| + | → [[xxx/sub]] |
| + | | Ein Wikilink auf eine Unterseite |
| + | → Linkklammern werden entfernt, Haupt-, Unterseite und Slash bleiben stehen |
| + | | <nowiki>{{ WikilinkWeg | [[xxx/sub]] }}</nowiki> |
| + | → {{WikilinkWeg|[[xxx/sub]]}} |
| + | |- |
| + | | <nowiki>[http://www.irgendwo.de/ Irgendwo]</nowiki> |
| + | → [http://www.irgendwo.de/ Irgendwo] |
| + | | Ein typischer externer Link mit Alternativtext |
| + | → Das Ergebnis ist unbrauchbar, da die Funktion alles bis zum letzten Doppelpunkt entfernt |
| + | | <nowiki>{{ WikilinkWeg | [http://www.irgendwo.de/ Irgendwo] }}</nowiki> |
| + | → {{WikilinkWeg|[http://www.irgendwo.de/ Irgendwo]}} |
| + | |- |
| + | | <nowiki>[[:Vorlage:WikilinkWeg|WikilinkWeg]]</nowiki> |
| + | → [[:Vorlage:WikilinkWeg|WikilinkWeg]] |
| + | | Ein Link auf diese Vorlage hier |
| + | → Alles muss raus, was nicht Seitentitel ist :-) |
| + | | <nowiki>{{ WikilinkWeg | [[:Vorlage:WikilinkWeg|WikilinkWeg]] }}</nowiki> |
| + | → {{WikilinkWeg|[[:Vorlage:WikilinkWeg|WikilinkWeg]]}} |
| + | |} |
| + | |
| + | == Quellcode kommentiert == |
| <pre> | | <pre> |
− | {{WikilinkWeg | + | <!-- Entferne alle Zeichen von links bis einschließlich dem letztmalig auftretenden Doppelpunkt ":" --> |
− | }} | + | {{#vardefine: Zeichenkette | {{#explode: {{{1}}} | : | -1 }} }} |
| + | |
| + | <!-- Entferne alle Zeichen von links bis einschließlich der letztmalig auftretenden öffnenden Eckklammer "[" --> |
| + | {{#vardefine: Zeichenkette | {{#explode: {{#var:Zeichenkette}} | {{!(}} | -1 }} }} |
| + | |
| + | <!-- Entferne alle Zeichen bis zum Ende ab der erstmalig auftretenden Pipe "|" --> |
| + | {{#vardefine: Zeichenkette | {{#explode: {{#var:Zeichenkette}} | {{!}} | 0 }} }} |
| + | |
| + | <!-- Entferne alle Zeichen bis zum Ende ab der erstmalig auftretenden schließenden Eckklammer "]" --> |
| + | <!-- Gebe diese verbleibende Zeichenkette zurück --> |
| + | {{#explode: {{#var:Zeichenkette}} | {{)!}} | 0 }} |
| </pre> | | </pre> |
− | Klicke auf „Bearbeiten“, um den Vorlagentext anzusehen.
| + | </noinclude><includeonly>{{#vardefine:Zeichenkette|{{#explode:{{{1}}}|:|-1}}}}{{#vardefine:Zeichenkette|{{#explode:{{#var:Zeichenkette}}|{{!(}}|-1}}}}{{#vardefine:Zeichenkette|{{#explode:{{#var:Zeichenkette}}|{{!}}|0}}}}{{#explode:{{#var:Zeichenkette}}|{{)!}}|0}}</includeonly> |
− | </noinclude><includeonly></includeonly> | |