jues
I'm new here

Erstes Element in Inhaltsbereich

Freundliches Hallo an alle,

ist es möglich zu unterscheiden welches Element (Absatz) als erstes in $CMS_VALUE(#global.page.body("content"))$ vorkommt? Wenn ja, wie?

MfG Jürgen Salesski

Message was edited by: Christoph Feddersen (adjusted thread title)

4 Replies
hoebbel
Crownpeak employee

Einfach das Element abfragen Smiley Wink?

#global.page.body("content").children.first

Dann die entsprechende Überprüfung durchführen, z.B.

$CMS_IF(#global.page.body("content").children.first.id == #global.section.id)$Ich bin der erste Absatz$CMS_END_IF$

oder

$CMS_IF(#global.page.body("body").children.first.template.uid == "geheimerabsatz")$

Hallo Herr Höbbel,

die If-Abfrage in der Seitenforlage wird wahrscheinlich zu keinem Ergebnis führen. Die Abfrage in allen Absatzvorlagen zu erstellen führt zu Redundanz von QT.

Gib es weitere Möglichkeiten?

0 Kudos
hoebbel
Crownpeak employee

Wieso wird die IF Abfrage in der Seitenvorlage zu keinem Ergebnis führen?

$CMS_IF(#global.page.body("body").children.first.template.uid == "UID des gesuchten Templates")$ wird auf jeden Fall funktionieren. [#global.section.id aber natürlich nicht]

Was soll denn warum worauf geprüft werden?

0 Kudos

Ich wollte nicht einen anderen Templat verwenden sondern einfach nur einen DIV mit eigener CSS-Klasse um das erste element legen. Mit Ihrem Hinweis habe ich aber bereits folgendes umgesetzt:

$CMS_FOR(child,#global.page.body("content").children)$
                    $CMS_IF(#for.index == 0)$
                        <h1>der erste</h1>
                            $CMS_VALUE(child)$
                    $CMS_ELSE$
                            $CMS_VALUE(child)$
                    $CMS_END_IF$
                $CMS_END_FOR$

... das ist genau das was ich brauchte.

Danke für die Hilfe.

0 Kudos