Startseite / Vorlagenentwicklung / Vorlagensyntax / Systemobjekte / #content

#contentVerfügbar ab FirstSpirit-Version 4.0

Das Systemobjekt #content steht innerhalb von Formatvorlagen zur Verfügung. Es dient dazu, den Inhalt der Eingabekomponenten CMS_INPUT_DOM oder CMS_INPUT_DOMTABLE auszulesen.

CMS_INPUT_DOMTABLE

Mit #content kann der Inhalt einer Tabellenzelle (Dom-Table) oder eines Absatzes (DOM-Editor) ausgegeben werden.

Der Inhalt einer Tabellenzelle wird entweder über die Formatvorlage mit dem Kürzel td oder mithilfe der Table-Funktion ausgegeben. Der Inhalt eines DOM-Editors wird über eine Formatvorlage mit aktivierter Option Absatz ausgegeben (z.B. die Formatvorlage mit dem Kürzel p).

Beispiel: Die Ausgabe des Tabelleninhalts in der Grafik mit #content

  • der 1. Zelle in der 1. Zeile lautet: 1. Zeile,<br>1. Spalte
  • der 2. Zelle in der 1. Zeile: 1. Zeile,<br>2. Spalte
  • usw.

Wichtig Die Funktion Table stellt eine Erweiterung der Formatvorlagen table, tr und td dar. Daher ist in dieser Funktion auch das Systemobjekt #content verfügbar.

Bei der Verwendung von weiteren Formatierungen (z.B. Fett) werden die Formatvorlagen nacheinander abgearbeitet und die Inhalte mit #content ausgegeben.

Hierzu ein Beispiel: Die Formatvorlage mit dem Kürzel td (für Tabellenzellen) enthält folgenden Inhalt:

<td>$CMS_VALUE(#content)$</td>

Die Formatvorlage mit dem Kürzel b (für Fett) enthält folgenden Inhalt:

*Fett markiert: <b>$CMS_VALUE(#content)$</b>*

Der eingegebene Text für eine Zelle lautet:

Eine Textzeile mit <b>fett</b> markiertem Text.

Die Ausgabe erfolgt nun zweistufig:

Zunächst wird die Formatvorlage td aufgerufen und das #content ersetzt:

<td>Eine Textzeile mit <b>fett</b> markiertem Text.</td>

Nun wird auf den Bereich, der mit dem öffnenden und schließenden b-Tag umschlossen wird, die Formatvorlage b angewendet und das #content ersetzt:

<td>Eine Textzeile mit *Fett markiert: <b>fett</b>* markiertem Text.</td>

#content und $CMS_RENDER(...)$

Eine Formatvorlage kann mit einer $CMS_RENDER(...)$-Anweisung zwar angesprochen werden, das Systemobjekt #content kann jedoch nicht durch $CMS_RENDER(...)$ gesetzt werden.

Somit ist #content in diesem Fall immer Null

ERROR: Expression delivers 'null'
inside of: Template 'renderTest' (id=771044)
inside of: $CMS_RENDER(template:"renderTest", content:"Test")$ - at 3, 1
inside of: Format Template 'renderTest' (id=771045)
inside of: $CMS_VALUE(#content)$ - at 1, 1

© 2005 - 2024 Crownpeak Technology GmbH | Alle Rechte vorbehalten. | FirstSpirit 2024.7 | Datenschutz