nanicajic
Occasional Observer

Gibt es im FS die Möglichkeit den ersten parent abzufragen?

Jump to solution

Hallo zusammen,

ich möchte, egal wie tief ich mich in der Struktur befinden, den ersten Parent abfragen. Gibt es dazu eine Globale abfrage?

Was ich bisher gesehen hatte war wenn meine Seite z.B. zwei ebenen tiefer liegt als der Start Punkt könnte ich den mit

#global.node.parent.parent

abfragen, da ich gerne den ersten parent egal wie tief die Seite liegt abfragen würde frage ich mich gerade ob es für den parent auch etwas

in der Richtung getFirstChild gibt? Ich habe dazu bisher leider nichts gefunden.

Beste Grüße,

Nenad

0 Kudos
1 Solution

Accepted Solutions

Hallo Nenad,

war die Lösung über das Template das was du suchtest?

Einfach anhand der API würde ich das sonst mit einer Schleife lösen: (evtl. muss der Code noch angepasst werden)

-- PseudoCode --

tmpParent = #global.node.parent;

while(!tmpParent.getParent() instanceof SiteStoreRoot)) {

          tmpParent = tmpParent.getParent();

}

-- /PseudeCode --

Viele Grüße

Rouven

View solution in original post

0 Kudos
4 Replies
hoebbel
Crownpeak employee

Hallo Nenad,

mit Template-Mitteln würde ich eine Navigationsfunktion verwenden:

<CMS_FUNCTION name="Navigation" resultname="fr_pt_getrootfolder">

<CMS_PARAM name="expansionVisibility" value="purepath"/>

<CMS_PARAM name="wholePathSelected" value="1"/>

<CMS_ARRAY_PARAM name="selectedHTML">

<CMS_ARRAY_ELEMENT index="0">$CMS_VALUE(#nav.folder.referenceName)$</CMS_ARRAY_ELEMENT>

</CMS_ARRAY_PARAM>

</CMS_FUNCTION>

Wenn du dann das Ganze dazu brauchst, um eine zweite Navigation von diesem Punkt beginnen zu lassen, dann geht das so:

<CMS_FUNCTION name="Navigation" resultname="fr_sc_navigation">

<CMS_VALUE_PARAM name="root" value="fr_pt_getrootfolder.toString()"/>

...

Wenn nicht, dann ignoriere diesen Teil einfach Smiley Wink

Viele Grüsse aus Dortmund,

  Holger

0 Kudos
Peter_Jodeleit
Crownpeak employee

Offenbar habe ich die Frage nicht verstanden. Es gibt doch immer nur einen "parent"?! Damit ist der von "getParent()" gelieferte Knoten der einzige?!

Peter
0 Kudos

Hi Peter,

ja es gibt nur einen "parent", aber je nachdem wie tief ich mich in der Struktur befinde gibt es ja einen parent.parent usw. und ich möchte gerne immer den ersten abfragen. Also den Startenden parent sozusagen oder anders gesagt die erste Ebene/Seite in der Struktur wo sich das child befindet egal wie tief das dann noch darunter liegt Smiley Wink

Grüße,

0 Kudos

Hallo Nenad,

war die Lösung über das Template das was du suchtest?

Einfach anhand der API würde ich das sonst mit einer Schleife lösen: (evtl. muss der Code noch angepasst werden)

-- PseudoCode --

tmpParent = #global.node.parent;

while(!tmpParent.getParent() instanceof SiteStoreRoot)) {

          tmpParent = tmpParent.getParent();

}

-- /PseudeCode --

Viele Grüße

Rouven

0 Kudos