Vorlage:Navigationsschleife: Unterschied zwischen den Versionen
Maggus (Diskussion | Beiträge) (Abfrage angepasst (Attribut Seitentitel nicht mehr notwendig), Debug-Liste eingesetzt u. auskommentiert) |
Maggus (Diskussion | Beiträge) (Bugfix: explode durch arraymap ersetzt, da sonst Fehler durch zu lange Zeichenkette auftreten konnte) |
||
Zeile 31: | Zeile 31: | ||
-->{{#vardefine:Mutterseite|{{#if:{{{Mutterseite|}}}|{{{Mutterseite}}}|{{#show:{{PAGENAME}}|?Mutterseite#-}}}}}}<!-- | -->{{#vardefine:Mutterseite|{{#if:{{{Mutterseite|}}}|{{{Mutterseite}}}|{{#show:{{PAGENAME}}|?Mutterseite#-}}}}}}<!-- | ||
-->{{#vardefine:Zähler|-1}}<!-- | -->{{#vardefine:Zähler|-1}}<!-- | ||
− | -->{{#vardefine:NaviListe|{{#ask:[[Hauptkategorie::{{#var:Hauptkategorie}}]][[Mutterseite::{{#var:Mutterseite}}]]|link=none}}}}<!-- | + | -->{{#vardefine:NaviListe|{{#ask:[[Hauptkategorie::{{#var:Hauptkategorie}}]][[Mutterseite::{{#var:Mutterseite}}]]|link=none|limit=100000}}}}<!-- |
-->{{#vardefine:NaviPos|{{#arraymap:{{#var:NaviListe}}|,|@@@@|{{#vardefine:Zähler|{{#expr:{{#var:Zähler}}+1}}}}{{#ifeq:@@@@|{{#var:DieseSeite}}|{{#var:Zähler}}|}}|}}}}<!-- | -->{{#vardefine:NaviPos|{{#arraymap:{{#var:NaviListe}}|,|@@@@|{{#vardefine:Zähler|{{#expr:{{#var:Zähler}}+1}}}}{{#ifeq:@@@@|{{#var:DieseSeite}}|{{#var:Zähler}}|}}|}}}}<!-- | ||
-->{{#vardefine:NaviPos+|{{#ifexpr:{{#var:NaviPos}}={{#var:Zähler}}|0|{{#expr:{{#var:NaviPos}}+1}}}}}}<!-- | -->{{#vardefine:NaviPos+|{{#ifexpr:{{#var:NaviPos}}={{#var:Zähler}}|0|{{#expr:{{#var:NaviPos}}+1}}}}}}<!-- | ||
-->{{#vardefine:NaviPos-|{{#ifexpr:{{#var:NaviPos}}=0|{{#var:Zähler}}|{{#expr:{{#var:NaviPos}}-1}}}}}}<!-- | -->{{#vardefine:NaviPos-|{{#ifexpr:{{#var:NaviPos}}=0|{{#var:Zähler}}|{{#expr:{{#var:NaviPos}}-1}}}}}}<!-- | ||
− | -->{{#vardefine:NaviWeiter|{{# | + | -->{{#vardefine:Zähler|-1}}<!-- |
− | -->{{#vardefine:NaviZurück|{{# | + | -->{{#vardefine:NaviWeiter|{{#arraymap:{{#var:NaviListe}}|,|@@@@|{{#vardefine:Zähler|{{#expr:{{#var:Zähler}}+1}}}}{{#ifeq:{{#var:NaviPos+}}|{{#var:Zähler}}|@@@@|}}|}}}}<!-- |
− | -->|}}|}}<!-- ENDE --><!-- | + | -->{{#vardefine:Zähler|-1}}<!-- |
+ | -->{{#vardefine:NaviZurück|{{#arraymap:{{#var:NaviListe}}|,|@@@@|{{#vardefine:Zähler|{{#expr:{{#var:Zähler}}+1}}}}{{#ifeq:{{#var:NaviPos-}}|{{#var:Zähler}}|@@@@|}}|}}}}<!-- | ||
+ | -->|}}|}}<!-- ENDE --><!-- START Debug | ||
'''<nowiki>{{#var:DieseSeite}}</nowiki>''' = {{#var:DieseSeite}}<br /> | '''<nowiki>{{#var:DieseSeite}}</nowiki>''' = {{#var:DieseSeite}}<br /> | ||
'''<nowiki>{{#var:Hauptkategorie}}</nowiki>''' = {{#var:Hauptkategorie}}<br /> | '''<nowiki>{{#var:Hauptkategorie}}</nowiki>''' = {{#var:Hauptkategorie}}<br /> | ||
Zeile 48: | Zeile 50: | ||
'''<nowiki>{{#var:NaviWeiter}}</nowiki>''' = {{#var:NaviWeiter}}<br /> | '''<nowiki>{{#var:NaviWeiter}}</nowiki>''' = {{#var:NaviWeiter}}<br /> | ||
'''<nowiki>{{#var:NaviZurück}}</nowiki>''' = {{#var:NaviZurück}}<br /> | '''<nowiki>{{#var:NaviZurück}}</nowiki>''' = {{#var:NaviZurück}}<br /> | ||
+ | --><!-- ENDE Debug | ||
--></includeonly> | --></includeonly> |
Version vom 10. Juni 2014, 14:14 Uhr
Dies ist die Vorlage „Navigationsschleife“. Sie gibt für die jeweils aktuelle Seite innerhalb einer gesetzten Hauptkategorie (z. B. Region) für eine gesetzte Mutterseite (z. B. Dragorea) die vorhergehende und die nachfolgende Seite an. Mit diesen Seiten können Weiter- und Zurück-Elemente verlinkt werden, so dass es möglich wird, sich in einer Schleife durchzunavigieren. Es werden allerdings ausschließlich Seiten berücksichtigt, die sowohl über das Attribut "Hauptkategorie" als auch über das Attribut "Mutterseite" verfügen. Die Vorlage wird im folgenden Format genutzt:
{{Navigationsschleife}}
Die Vorlage gibt dann folgenden beiden Variablen zurück, die beliebig eingebunden werden können:
{{#var:NaviWeiter}} |
= Die Seite, welche alphabetisch auf die aktuelle Seite folgt |
{{#var:NaviZurück}} |
= Die Seite, welche alphabetisch der aktuellen Seite vorhergeht |
Im Standardfall wird die Vorlage auf einer Seite eingebunden, die bereits über die Attribute Hauptkategorie und Mutterseite verfügen. Das ist namentlich der Fall bei allen Regionen, Landschaftsgebieten, Gewässern, Örtlichkeiten, Siedlungen sowie Personen.
Optional ist es allerdings möglich, der Vorlage die Parameter DieseSeite (=Seite, von der die Navigationsschleife ausgeht), Hauptkategorie und/oder Mutterseite individuell mitzugeben. Die Parameter müssen unverlinkter Fließtext sein, da die Weiterverarbeitung mit Wikilinks nicht möglich ist. Für die optionalen Parameter ist folgendes Format zu nutzen:
{{Navigationsschleife | DieseSeite = <Unverlinkter Text> | Hauptkategorie = <Unverlinkter Text> | Mutterseite = <Unverlinkter Text> }}
Klicke auf „Bearbeiten“, um den Vorlagentext anzusehen.