Code Bereinigung

Für die Generierung von Seiten setzen wir u.a. auch Formatvorlagen ein. In diesen werden über Schleifen (CMS_FOR, CMS_IF) Inhalte generiert.

Bei der Generierung der Seiten wird jede Zeile in der entstandenen Seite ausgegeben, obwohl diese gar kein Output generiert.

Bsp.

Ausgabe FOR-Schleife

$CMS_FOR(..)$

     $CMS_IF(...)$

         <p>Ausgabe</p>

     $CMS_END_IF$

$CMS_END_FOR$

ENDE FOR-Schleife

ergibt im Quelltext der Generierten Seite

Ausgabe FOR-Schleife



     <p>Ausgabe</p>




     <p>Ausgabe</p>


....

ENDE FOR-Schleife

Somit wird der Quelltext der generierten Seite unnötig lang.

Nun kann man in der Formatvorlage die Schleifen komprimieren

Ausgabe FOR-Schleife

$CMS_FOR(..)$$CMS_IF(...)$<p>Ausgabe</p>$CMS_END_IF$

$CMS_END_FOR$

ENDE FOR-Schleife

Damit wird der Quelltext der generierten Seite etwas besserm aber die Formatvorlage schwer lesbar.

Mein Wunsch wäre unnötige Leerzeilen zu entfernen, bzw Zeilen die keinen Output generieren auch nicht in der generierten zeile auszugeben.

Momentan setzen wir noch 4.1 ein, ich habe keinen Überblick, ob das in einer neuen Version anders ist.

Tags (1)
3 Comments
hoebbel
Crownpeak employee
Crownpeak employee

Einfach mal $CMS_TRIM(level:2)$ am Anfang des HTML-Body-Bereichs einfügen und vor dem Ende $CMS_END_TRIM$, dann sind die Leerzeilen weg Smiley Happy

<CMS_HEADER>

...

</CMS_HEADER><DOCTYPE...>

<html>

<head>

...

</head>

<body>$CMS_TRIM(level:2)$

...

$CMS_END_TRIM$</body>

</html>

Je nach Geschmack kann auch level:3 eingesetzt werden (dann werden auch führende und endende Whitespaces entfernt) Smiley Wink

Bei level:4 sollte beachtet werden, dass Java Skript Code problemtisch wird, wenn der gesamte Quelltext nur noch in einer Zeile steht.

Die Dokumentation zu $CMS_TRIM$ findet man übrigens wie üblich in der OlineDokumentationFirstSpirit.

gockel
Crownpeak employee
Crownpeak employee
Die Dokumentation zu $CMS_TRIM$ findet man übrigens wie üblich in der  OlineDokumentationFirstSpirit.

Hier noch der Link: $CMS_TRIM

aVogt
Occasional Collector

Genau das wollte ich.

Vielen Dank.