Navigation umgekehrt sortiert ausgeben
Author: MarcusDau
Publication Date: 9/9/2011 12:33
Hallo!
Ich kann momentan wohl auf Grund einer Erkältung nicht mehr so klar denken, darum muss ich diese Frage hier stellen.
Ich teste eine wirklich simple CMS_FUNCTION ein, die eine Art Brotkrume für etracker generieren soll:
<CMS_FUNCTION name="Navigation" resultname="fr_pt_breadcrumb_simple">
<CMS_PARAM name="expansionVisibility" value="purepath" />
<CMS_PARAM name="suppressEmptyFolders" value="0" />
<CMS_PARAM name="wholePathSelected" value="0" />
<CMS_ARRAY_PARAM name="unselectedHTML">
<CMS_ARRAY_ELEMENT index="1"><![CDATA[$CMS_IF(#nav.ref.uid=="startseite")$__INDEX__Startseite$CMS_ELSE$Startseite,$CMS_VALUE(#nav.label)$$CMS_END_IF$]]></CMS_ARRAY_ELEMENT>
<CMS_ARRAY_ELEMENT index="2..10"><![CDATA[,$CMS_VALUE(#nav.label)$]]></CMS_ARRAY_ELEMENT>
</CMS_ARRAY_PARAM>
<CMS_ARRAY_PARAM name="selectedHTML">
<CMS_ARRAY_ELEMENT index="1"><![CDATA[$CMS_IF(#nav.ref.uid=="startseite")$__INDEX__Startseite$CMS_ELSE$Startseite,$CMS_VALUE(#nav.label)$$CMS_END_IF$]]></CMS_ARRAY_ELEMENT>
<CMS_ARRAY_ELEMENT index="2..10"><![CDATA[,$CMS_VALUE(#nav.label)$]]></CMS_ARRAY_ELEMENT>
</CMS_ARRAY_PARAM>
</CMS_FUNCTION>
Dabei kommt z.B. so etwas heraus:
- Startseite,Unterseite1,Unterseite2
Nun möchte ich das ganze aber umgekehrt sortiert ausgeben lassen, also
- Unterseite2 < Unterseite1 < Startseite
Wie kann ich das mit CMS-Bordmitteln lösen? JSP kommt hier nicht in Frage, da ich diesen "Wert" dann mittels
$CMS_SET(#global.context("PAGE")["etracker_pagename"],WERT)$
setzen und später in einem CMS_RENDER weiterreichen möchte.
Kann $CMS_FOR auf rückwärts ein Array durchlaufen? Habe das bisher nicht hinbekommen.
Danke für Eure Hilfe im Voraus.
Grüße
Marcus
Tags: array, cms_function, etracker, navigation, reverse
-
Author: MarcusDau - 9/12/2011 12:46
So, Gehirnwindungen wieder neu sortiert und nun konnte ich es dann doch selber lösen!
$CMS_SET(breadcrumbReverse,"")$
$CMS_FOR(for_wrapper, [1 .. fr_pt_breadcrumb_simple.toString().split(",").size()])$
$CMS_SET(breadcrumbReverse,fr_pt_breadcrumb_simple.toString().split(",")[#for.index] + " < " + breadcrumbReverse)$
$CMS_END_FOR$
$CMS_SET(#global.context("PAGE")["etracker_pagename"],breadcrumbReverse.toString().replaceAll(" < $",""))$
Grüße
Marcus
0
Bitte melden Sie sich an, um einen Kommentar zu hinterlassen.
Kommentare
1 Kommentar