Zum Hauptinhalt gehen

Navigation durchnummerieren

Kommentare

4 Kommentare

  • Zendesk API User
    Author: sense - 10/26/2017 13:39

    Das sollte sich mit #nav.level und #nav.levelPos zusammenbasteln lassen.

    #nav.level: Nummer der Navigationsebene. Die Zählung beginnt mit 0.

    #nav.levelPos: Position des aktuellen Ordners in der aktuellen Ebene. Die Zählung beginnt mit 0.

    Mit ein bisschen zusätzlicher Logik solltest Du dann den "Zahlenstring" erhalten.

    0
  • Zendesk API User
    Author: TimoMeister - 10/26/2017 13:43

    Das ist richtig. Mit Abfragen klappt das schon.

    $CMS_IF(#nav.level==0)$

    $CMS_VALUE(#nav.levelPos)$

    $CMS_ELSIF(#nav.level==1)$

    $CMS_VALUE(#nav.folder.parent.getPosition+"_"+#nav.levelPos)$

    $CMS_ELSIF(#nav.level==2)$

    $CMS_VALUE(#nav.folder.parent.parent.getPosition+"_"+#nav.folder.parent.getPosition+"_"+#nav.levelPos)$

    ...

    $CMS_END_IF$

    Ich dachte nur, vielleicht geht es etwas eleganter? Mit dem Hintergrund, dass man im vorhinein nicht genau weiß, wie viele Ebenen es geben wird.

    0
  • Zendesk API User
    Author: mbergmann - 10/26/2017 13:51

    Hallo Timo,

    das sollte in Deinem Fall durch Nutzung von #nav.positions[levelIndex] machbar sein. Du bekommst dabei jeweils die Position in der übergebenen Ebene. Für den Ordner 2.4.6 wäre #nav.positions[1] also 4.

    Um den kompletten „Ebenen-Level-Pfad“ in jedem Element auszugeben, sollte etwas wie folgt funktionieren (nicht getestet, nur für die Idee, ggf. noch irgendwo +/- 1 einbauen):

    <item id="$CMS_VALUE([0..#nav.level].map(x->#nav.positions[x]).toString("."))$">...

    Viele Grüße

    Michael

    0
  • Zendesk API User
    Author: TimoMeister - 10/26/2017 14:01

    Hallo Michael,

    das ist perfekt!!! Genau das habe ich gesucht.

    Funktioniert genau, wie von Dir angegeben.

    Danke und viele Grüße
    Timo

    0

Bitte melden Sie sich an, um einen Kommentar zu hinterlassen.