Vorlage:Navigationsschleife: Unterschied zwischen den Versionen

Aus Splitterwiki
Zur Navigation springen Zur Suche springen
(Erweiterung um verlinkte Elemente zum Blättern)
 
(48 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
 
<noinclude>
 
<noinclude>
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.
+
Dies ist die Vorlage „Navigationsschleife“. Sie gibt für die jeweils aktuelle Seite innerhalb einer gesetzten Hauptkategorie (z. B. Region) für eine gesetzte Vaterseite (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 "Vaterseiten" verfügen.
 
Die Vorlage wird im folgenden Format genutzt:
 
Die Vorlage wird im folgenden Format genutzt:
 
<pre>
 
<pre>
Zeile 7: Zeile 7:
  
 
Die Vorlage gibt folgende Variablen zurück, die beliebig eingebunden werden können:
 
Die Vorlage gibt folgende Variablen zurück, die beliebig eingebunden werden können:
{|class="table"
+
{|class="table zebra"
| <pre>{{#var:NaviZurück}}</pre> || = Die Seite, welche alphabetisch der aktuellen Seite vorhergeht (plain, also unverlinkt)
+
| colspan="3" |<hr>
 
|-
 
|-
| <pre>{{#var:NaviWeiter}}</pre> || = Die Seite, welche alphabetisch auf die aktuelle Seite folgt (plain, also unverlinkt)
+
! Code !! Erläuterung !! Beispiel: Fedirin mit Vaterseiten Farukan {{Navigationsschleife|DieseSeite=Fedirin|Hauptkategorie=Region|Vaterseiten=Farukan}}
 
|-
 
|-
| <pre>{{#var:NaviZurück.Linkpfeil}}</pre> || = Ein mit der Vorseite verlinktes Pfeilsymbol
+
| colspan="3" |<hr>
 
|-
 
|-
| <pre>{{#var:NaviWeiter.Linkpfeil}}</pre> || = Ein mit der Folgeseite verlinktes Pfeilsymbol
+
| <pre>{{#var:NaviZurück}}</pre> || = Die Seite, welche alphabetisch der aktuellen Seite vorhergeht (plain, also unverlinkt) || {{#var:NaviZurück}}
 +
|-
 +
| <pre>{{#var:NaviWeiter}}</pre> || = Die Seite, welche alphabetisch auf die aktuelle Seite folgt (plain, also unverlinkt) || {{#var:NaviWeiter}}
 +
|-
 +
| <pre>{{#var:NaviZurück.Linkpfeil}}</pre> || = Ein mit der Vorseite verlinktes Pfeilsymbol || {{#var:NaviZurück.Linkpfeil}}
 +
|-
 +
| <pre>{{#var:NaviWeiter.Linkpfeil}}</pre> || = Ein mit der Folgeseite verlinktes Pfeilsymbol || {{#var:NaviWeiter.Linkpfeil}}
 +
|-
 +
| <pre>{{#var:Navi.Komplett}}</pre> || = Vaterseite mit Pfeilsymbolen links/rechts, vollständig verlinkt || {{#var:Navi.Komplett}}
 +
|-
 +
| colspan="3" |<hr>
 
|}
 
|}
  
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 [[:Kategorie:Region|Region]]en, [[:Kategorie:Landschaftsgebiet|Landschaftsgebiet]]en, [[:Kategorie:Gewässer|Gewässer]]n, [[:Kategorie:Örtlichkeit|Örtlichkeit]]en, [[:Kategorie:Siedlung|Siedlung]]en sowie [[:Kategorie:Person|Person]]en.
+
Im Standardfall wird die Vorlage auf einer Seite eingebunden, die bereits über die Attribute ''Hauptkategorie'' und ''Vaterseiten'' verfügen. Das ist namentlich der Fall bei allen [[:Kategorie:Region|Region]]en, [[:Kategorie:Landschaftsgebiet|Landschaftsgebiet]]en, [[:Kategorie:Gewässer|Gewässer]]n, [[:Kategorie:Örtlichkeit|Örtlichkeit]]en, [[:Kategorie:Siedlung|Siedlung]]en sowie [[:Kategorie:Person|Person]]en.
  
''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:
+
''Optional'' ist es allerdings möglich, der Vorlage die Parameter DieseSeite (=Seite, von der die Navigationsschleife ausgeht), Hauptkategorie und/oder Vaterseite 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:
 
<pre>
 
<pre>
 
{{Navigationsschleife
 
{{Navigationsschleife
 
   | DieseSeite = <Unverlinkter Text>
 
   | DieseSeite = <Unverlinkter Text>
 
   | Hauptkategorie = <Unverlinkter Text>
 
   | Hauptkategorie = <Unverlinkter Text>
   | Mutterseite = <Unverlinkter Text>
+
   | Vaterseiten = <Unverlinkter Text>
 
}}
 
}}
 
</pre>
 
</pre>
 
Klicke auf „Bearbeiten“, um den Vorlagentext anzusehen.
 
Klicke auf „Bearbeiten“, um den Vorlagentext anzusehen.
 
</noinclude><includeonly><!-- START  
 
</noinclude><includeonly><!-- START  
--><!-- START Ermittlung
+
 
-->{{#if:   {{{Hauptkategorie|}}} {{WikilinkWeg|{{#show:{{PAGENAME}}|mainlabel=-|?Hauptkategorie}}}}
+
--> {{#if: {{#show:{{PAGENAME}}|?Vaterseiten#}}<!--
  | {{#if: {{{Mutterseite|}}} {{WikilinkWeg|{{#show:{{PAGENAME}}|mainlabel=-|?Mutterseite}}}}
+
  -->|<!--
    |<!--
+
 
-->{{#vardefine:DieseSeite|{{#if:{{{DieseSeite|}}}|{{{DieseSeite}}}|{{PAGENAME}}}}}}<!--
+
    -->{{#vardefine: DieseSeite | {{PAGENAME}} }}<!--
-->{{#vardefine:Hauptkategorie|{{#if:{{{Hauptkategorie|}}}|{{{Hauptkategorie}}}|{{#show:{{PAGENAME}}|?Hauptkategorie#-}}}}}}<!--
+
    -->{{#vardefine: Vaterseiten | {{{Vaterseiten}}} }}<!-- Statt Explode, Vaterseite aus den Template aufruf, dann funktioniert es auch
-->{{#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|limit=100000}}}}<!--
+
    -->{{#vardefine: NaviListe | {{#ask:[[Vaterseiten::{{#var:Vaterseiten}}]]|link=none|limit=100000|sep=@//@}}}}<!--
-->{{#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:{{PAGENAME:@@@@}}|{{#var:DieseSeite}}|{{#var:Zähler}}|}}|}}}}<!--
-->{{#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:NaviPos+|{{#ifexpr:{{#var:NaviPos}}={{#var:Zähler}}|0|{{#expr:{{#var:NaviPos}}+1}}}}}}<!--
--><!-- ENDE Ermittlung
+
 
--><!--
+
    -->{{#vardefine:Zähler|-1}}<!--
--><!-- START Ausgabe
+
    -->{{#ifexpr: {{#var:NaviPos}} = {{#var:NaviPos-}}<!--
-->{{#vardefine:Zähler|-1}}<!--
+
      -->| {{#vardefine:NaviZurück|}}<!--
-->{{#vardefine:NaviZurück|{{#arraymap:{{#var:NaviListe}}|,|@@@@|{{#vardefine:Zähler|{{#expr:{{#var:Zähler}}+1}}}}{{#ifeq:{{#var:NaviPos-}}|{{#var:Zähler}}|@@@@|}}|}}}}<!--
+
      -->| {{#vardefine:NaviZurück|{{#arraymap:{{#var:NaviListe}}|@//@|@@@@|{{#vardefine:Zähler|{{#expr:{{#var:Zähler}}+1}}}}{{#ifeq:{{#var:NaviPos-}}|{{#var:Zähler}}|@@@@|}}|}}}}<!--
-->{{#vardefine:Zähler|-1}}<!--
+
      -->}}<!--
-->{{#vardefine:NaviWeiter|{{#arraymap:{{#var:NaviListe}}|,|@@@@|{{#vardefine:Zähler|{{#expr:{{#var:Zähler}}+1}}}}{{#ifeq:{{#var:NaviPos+}}|{{#var:Zähler}}|@@@@|}}|}}}}<!--
+
    -->{{#vardefine:Zähler|-1}}<!--
-->{{#vardefine: Linkpfeil.Zurück|&nbsp;&lsaquo;&nbsp;}}<!--
+
    -->{{#ifexpr: {{#var:NaviPos}} = {{#var:NaviPos+}}<!--
-->{{#vardefine: Linkpfeil.Weiter|&nbsp;&rsaquo;&nbsp;}}<!--
+
      -->| {{#vardefine: NaviWeiter|}}<!--
-->{{#vardefine: NaviZurück.Linkpfeil|[[{{#var:NaviZurück}}{{!}}<span title="{{#var:Mutterseite}} zurückblättern">{{#var:Linkpfeil.Zurück}}</span>]]}}<!--
+
      -->| {{#vardefine: NaviWeiter <!--
-->{{#vardefine: NaviWeiter.Linkpfeil|[[{{#var:NaviWeiter}}{{!}}<span title="{{#var:Mutterseite}} zurückblättern">{{#var:Linkpfeil.Weiter}}</span>]]}}<!--
+
        -->| {{#arraymap: {{#var:NaviListe}} <!--
--><!-- ENDE Ausgabe
+
          -->| @//@<!--
-->|}}|}}<!-- ENDE --><!-- START Debug
+
          -->| @@@@<!--
 +
          -->| {{#vardefine: Zähler | {{#expr:{{#var:Zähler}}+1}} }}<!--
 +
            -->{{#ifeq: {{#var:NaviPos+}} | {{#var:Zähler}}<!--
 +
              -->| @@@@<!--
 +
              -->|<!--
 +
              -->}}<!--
 +
            -->|<!--
 +
            -->}}<!--
 +
        -->}}<!--
 +
      -->}}<!--
 +
    -->{{#vardefine: Linkpfeil.Zurück|&nbsp;&lArr;&nbsp;}}<!--
 +
    -->{{#vardefine: Linkpfeil.Weiter|&nbsp;&rArr;&nbsp;}}<!--
 +
    -->{{#if: {{#var:NaviZurück}}<!--
 +
      -->| {{#vardefine: NaviZurück.Linkpfeil|[[{{#var:NaviZurück}}{{!}}<span title="{{#var:Vaterseiten}} zurückblättern ({{#var:NaviZurück}})">{{#var:Linkpfeil.Zurück}}</span>]]}}<!--
 +
      -->| {{#vardefine: NaviZurück.Linkpfeil|&#32;}}<!--
 +
      -->}}<!--
 +
    -->{{#if: {{#var:NaviWeiter}}<!--
 +
      -->| {{#vardefine: NaviWeiter.Linkpfeil|[[{{#var:NaviWeiter}}{{!}}<span title="{{#var:Vaterseiten}} weiterblättern ({{#var:NaviWeiter}})">{{#var:Linkpfeil.Weiter}}</span>]]}}<!--
 +
      -->| {{#vardefine: NaviWeiter.Linkpfeil|&#32;}}<!--
 +
      -->}}<!--
 +
    -->{{#vardefine: Navi.Komplett | {{#var:NaviZurück.Linkpfeil}}[[{{#var:Vaterseiten}}]]{{#var:NaviWeiter.Linkpfeil}} }}<!--
 +
    --><!-- ENDE Ausgabe
 +
  -->|<!--
 +
  -->}}<!--
 +
--><!-- ENDE  
 +
 
 +
--><!-- START Debug <br />
 
'''<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 />
'''<nowiki>{{#var:Mutterseite}}</nowiki>''' = {{#var:Mutterseite}}<br />
+
'''<nowiki>{{#var:Vaterseiten}}</nowiki>''' = {{#var:Vaterseiten}}<br />
 
'''<nowiki>{{#var:Zähler}}</nowiki>''' = {{#var:Zähler}}<br />
 
'''<nowiki>{{#var:Zähler}}</nowiki>''' = {{#var:Zähler}}<br />
 
'''<nowiki>{{#var:NaviListe}}</nowiki>''' = {{#var:NaviListe}}<br />
 
'''<nowiki>{{#var:NaviListe}}</nowiki>''' = {{#var:NaviListe}}<br />
 
'''<nowiki>{{#var:NaviPos}}</nowiki>''' = {{#var:NaviPos}}<br />
 
'''<nowiki>{{#var:NaviPos}}</nowiki>''' = {{#var:NaviPos}}<br />
 +
'''<nowiki>{{#var:NaviPos-}}</nowiki>''' = {{#var:NaviPos-}}<br />
 
'''<nowiki>{{#var:NaviPos+}}</nowiki>''' = {{#var:NaviPos+}}<br />
 
'''<nowiki>{{#var:NaviPos+}}</nowiki>''' = {{#var:NaviPos+}}<br />
'''<nowiki>{{#var:NaviPos-}}</nowiki>''' = {{#var:NaviPos-}}<br />
+
'''<nowiki>{{#var:NaviZurück}}</nowiki>''' = {{#var:NaviZurück}}<br />
 
'''<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.Linkpfeil}}</nowiki>''' = {{#var:NaviZurück.Linkpfeil}}<br />
--><!-- ENDE Debug
+
'''<nowiki>{{#var:NaviWeiter.Linkpfeil}}</nowiki>''' = {{#var:NaviWeiter.Linkpfeil}}<br />
 +
'''<nowiki>{{#var:Navi.Komplett}}</nowiki>''' = {{#var:Navi.Komplett}}<br />
 +
<!-- ENDE Debug
 
--></includeonly>
 
--></includeonly>

Aktuelle Version vom 22. November 2020, 23:53 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 Vaterseite (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 "Vaterseiten" verfügen. Die Vorlage wird im folgenden Format genutzt:

{{Navigationsschleife}}

Die Vorlage gibt folgende Variablen zurück, die beliebig eingebunden werden können:


Code Erläuterung Beispiel: Fedirin mit Vaterseiten Farukan

{{#var:NaviZurück}}
= Die Seite, welche alphabetisch der aktuellen Seite vorhergeht (plain, also unverlinkt)
{{#var:NaviWeiter}}
= Die Seite, welche alphabetisch auf die aktuelle Seite folgt (plain, also unverlinkt)
{{#var:NaviZurück.Linkpfeil}}
= Ein mit der Vorseite verlinktes Pfeilsymbol
{{#var:NaviWeiter.Linkpfeil}}
= Ein mit der Folgeseite verlinktes Pfeilsymbol
{{#var:Navi.Komplett}}
= Vaterseite mit Pfeilsymbolen links/rechts, vollständig verlinkt

Im Standardfall wird die Vorlage auf einer Seite eingebunden, die bereits über die Attribute Hauptkategorie und Vaterseiten 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 Vaterseite 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>
  | Vaterseiten = <Unverlinkter Text>
}}

Klicke auf „Bearbeiten“, um den Vorlagentext anzusehen.