Questions & Answers

pbender
I'm new here

PageGroup Label unerwartetes Verhalten

Hallo liebe Community,

wie kann ich bei einer PageGroup den Namen der Seite aus der Struktur-Verwaltung ausgeben? Oder gibt es die Mรถglichkeit รผber #nav.ref an das PageRef Objekt zu kommen?

#nav.label

Liefert den Namen der entsprechenden Seite zurรผck. Dieser wird entweder in der Struktur-Verwaltung gesetzt (Text fรผr Sitemap) oder es handelt sich um den Namen der Seite aus der Inhalte-Verwaltung.

String
(Zeichenkette)

#nav.label gibt den "Text fรผr Sitemap" oder den Namen aus der Inhalte-Verwaltung aus. Dies ist doch im Vergleich zu den anderen Navigations-Funktionionen inkonsistent und aus meiner Sicht ein unerwartetes Verhalten.

Ich mรถchte vermeiden, dass der Redakteur sich Gedanken machen muss, wo er welchen Namen zu pflegen hat:

  1. Struktur-Verwaltung
  2. Text fรผr Sitemap
  3. Inhalts-Verwaltung

Danke und viele GrรผรŸe

Philipp

0 Kudos
8 Replies
sebastianc
Crownpeak employee

Hallo Philipp,

kรถnntest du uns dein PageGroup-Beispiel genauer erlรคutern?

Nutzt du eigene Eingabeformulare neben der Struktur-Verwaltung?

GruรŸ,

Sebastian

0 Kudos
MichaelaReydt
Community Manager

Hallo Philipp,

ist dieses Posting noch aktuell? Benรถtigst du noch weitere Hilfe?

Solltest dieses Posting noch Bestand haben, wรคre es super, wenn du Sebastians Fragen beantworten wรผrdest.

Viele GrรผรŸe

Michaela

0 Kudos
pbender
I'm new here

Hallo Michaela, Hallo Sebastian,

ich habe eine PageGroup Navigation und wollte hierzu die PageGroup-Header-Funktion verwenden. Was natรผrlich auch der vorgegebene und schรถnere Weg ist. Innerhalb der PageGroup-Funktion wollte ich mit #nav.label den Menรผname der Menรผebene (aus der Struktur-Verwaltung) auslesen. Dies ist aber nicht mรถglich, da der Name der Seite aus der Inhalte-Verwaltung verwendet wird.

Bei jeder anderen Navigations-Funktion werden die Namen aus der Struktur-Verwaltung gezogen nur eben nicht bei der PageGroup Navigation-Funktion.

Mein aktueller Workaround ist folgender.

Ich hole mir die PageGroup Member selbst:

$CMS_SET(set_ft_pages, if(!set_ft_root.pageGroup.isEmpty, set_ft_root.pageGroup.members, {}))$

Iteriere รผber die Member:

$CMS_FOR(for_page, set_ft_pages)$

Gebe den DisplayName von der Struktur-Verwaltung aus:

$CMS_VALUE(for_page.displayName(set_ft_lang))$

Ich hoffe das Problem ist nun etwas verstรคndlicher.

Danke und viele GrรผรŸe

Philipp

0 Kudos

Hallo Philipp,

wir denken, dass wir dein Problem nun verstanden haben. Zum Thema PageGroups gibt es noch zwei Systemobjekte, die dir weiterhelfen dรผrften: #docGroup und #docNode. Mit #docGroup.childs bekommst du die Liste deiner Seitenreferenzen, die du wolltest. Du kannst dann mit dem Index aus #nav.pos arbeiten. Es gibt aber auch auf beiden Objekten wieder ein label.

Probier mal, ob du damit besser zum gewรผnschten Ergebnis kommst.

GrรผรŸe,

Hannes

0 Kudos
pavone
I'm new here

Hallo Phillip,

ich habe gerade deine Situation nachgestellt und so wie ich PageGroups verstehe, macht es durchaus Sinn, dass #nav.label nicht den Menรผnamen der Menรผebene liefert.

Meines Wissens mรผssen die Seitenreferenzen einer PageGroup direkte Kinder des Menรผorderns sein, der die PageGroup definiert. In der Strukturverwaltung sieht es also (meines Wissens) immer so aus:

Menรผordner --> Definiert die PageGroup und ihre Member

    Seitenreferenz 1 --> Member der PageGroup

    Seitenreferenz 2 --> Member der PageGroup

    ...

In meinem Testprojekt konnte ich Seitenreferenzen aus anderen Menรผordnern oder Sub-Menรผordnern nicht zur PageGroup hinzufรผgen.

Wenn #nav.label den Menรผnamen der Menรผebene liefern wรผrde, wรคre das Ergebnis deshalb fรผr alle Elemente der PageGroup immer gleich, da alle in der gleichen Menรผebene liegen. Eine Unterscheidung wรคre also nicht mรถglich.

Viele GrรผรŸe

Tim

0 Kudos

Hallo Tim,

#nav.label dรผrfte auch nicht den Menรผnamen der Menรผebene liefern, sondern sollte den Namen der Seitenreferenz liefern. Dann wรผrde man alle Menรผnamen aus der Strukturverwaltung ziehen und hรคtte keinen Mix aus Inhaltsverwaltung und Strukturverwaltung fรผr die Anzeige der Menรผnamen.

Vermutlich erreiche ich das gewรผnschte Ergebnis mit #docGroup.childs, trotzdem ist das jetzige Verhalten fรผr mich etwas unlogisch Smiley Happy .

Angenommen ich habe eine Inhaltsseite und diese wird von meherern Seitenreferenzen verwendet und diese Seiten sind noch zufรคllig in einer PageGroup. So kann ich keinen unterschiedlichen Menรผnamen angeben, da dieser aus der Inhaltsstruktur gezogen wird.

Viele GrรผรŸe

Philipp

0 Kudos

Hallo Phillip,

#nav.label dรผrfte auch nicht den Menรผnamen der Menรผebene liefern, sondern sollte den Namen der Seitenreferenz liefern. Dann wรผrde man alle Menรผnamen aus der Strukturverwaltung ziehen und hรคtte keinen Mix aus Inhaltsverwaltung und Strukturverwaltung fรผr die Anzeige der Menรผnamen.

Auch dann wรผrde sich #nav.label "anders als sonst" verhalten. AuรŸerdem muss der Anzeigename der Seitenreferenz ja nicht unbedingt der Menรผname fรผr diese Seite sein.

Angenommen ich habe eine Inhaltsseite und diese wird von meherern Seitenreferenzen verwendet und diese Seiten sind noch zufรคllig in einer PageGroup. So kann ich keinen unterschiedlichen Menรผnamen angeben, da dieser aus der Inhaltsstruktur gezogen wird.

Das ist kein Problem, da du fรผr jede Seitenreferenz individuell einen Namen รผber "Text fรผr die Menรผ-รœbersicht" definieren kannst. Dadurch kannst du die Pflege der Namen auch komplett in der Strukturverwaltung vornehmen.

Viele GrรผรŸe

Tim

Hallo Tim,

dann muss man sich wohl mit dem "anders als sonst" anfreunden Smiley Happy. Aber ich hoffe du verstehst etwas das Anliegen, da im Normalfall ein Redakteur das Wissen haben muss.

Danke und viele GrรผรŸe

Philipp

0 Kudos

Type a product name