Standardinhalt anzeigen bei leerer Inhaltsspalte

Wenn Sie mit einem dreispaltigen Layout arbeiten und besipielsweise in der rechten Spalte noch kein Inhalt vorhanden ist, können Sie auf diese Weise dort immer einen Standard-Inhalt anzeigen.

Legen Sie zunächst einen Sys-Ordner an, z.B. mit den Namen Spezialcontent. In einem Sys-Ordner können auch normale Inhaltselemente gespeichert werden, diese werden dann allerdings zunächst nirgends angezeigt. In diesem Ordner legen Sie ein oder mehrere Inhaltselemente an (Text, Text mit Bild oder auch ein Plugin).

Nun müssen Sie das gewünschte Inhaltselement aus der Datenbank auslesen (Listing 1) und es anschließend durch Ändern des Setup-Teils des Haupttemplates in die Seite einbinden (Listing 2).

#### Listing 1: Inhaltslement aus der Datenbank holen
temp.specialContent = RECORDS
temp.specialContent {
  tables = tt_content
#### UID des gewünschten Inhaltselments
  source = 5
  dontCheckPid = 1
}
#### Listing 2: Haupttemplate ändern
temp.mainTemplate = TEMPLATE
temp.mainTemplate {
  template =< plugin.tx_automaketemplate_pi1
  template.content.templateType = main
  workOnSubpart = DOCUMENT_BODY
  subparts.header < temp.header
  subparts.nav_main < temp.nav_main
  subparts.teaser < temp.teaser
  subparts.col1_content < temp.col1_content
  subparts.col2_content = COA
  subparts.col2_content  {
    10 = COA
#### Ist kein Inhalt vorhanden, dann Standardinhalt anzeigen
    10.10 < temp.specialContent
#### Wird auf der Seite Inhalt angelegt, stattdessen diesen anzeigen
    10.stdWrap.override.cObject  < styles.content.getRight
  }
  subparts.col3_innen = COA
  subparts.col3_innen.10 < styles.content.get
  subparts.col3_innen.20 < temp.contentAreaTemplate
  subparts.col3_innen.30 < styles.content.get
  subparts.col3_innen.30.select.where = colPos=7
  subparts.footer < temp.footer
}

Zufälliges Inhaltselement auf einer Seite darstellen

Möchten Sie auf einer Seite ein zufälliges Inhaltselement ausgeben, müssen Sie zunächst eine Seite erzeugen, die nicht im Menü erscheint (zum Beispiel einen Sys-Ordner). Die Position im Seitenbaum ist egal. In diesem Ordner speichern Sie alle zufällig anzuzeigenden Inhaltselemente. Diese werden dann zunächst überhaupt nirgends angezeigt.

Erzeugen Sie dann ein Öffnet einen internen Link im aktuellen FensterErweiterungstemplate im Ordner Template Storage (Listing 1) und binden Sie dieses in die Seitenausgabe ein (Listing 2) indem Sie die rot markierte Zeile hinzufügen. Ein zufällig ausgewähltes, im Sys-Ordner mit der UID 123 enthaltenes Inhaltselement wird nun am Anfang jeder Seite ausgegeben.

#### Listing 1 (zufälliges Element auswählen)
temp.zufallsElement = COA_INT
temp.zufallsElement {
#### Anzeige eines zufälligen Inhaltselementes aus Ordner mit UID=123
  10 = CONTENT
  10 {
    table = tt_content
    select {
      pidInList = 123
      orderBy = RAND()
      max = 1
      languageField = sys_language_uid
    }
    renderObj < tt_content
    renderObj.stdWrap.wrap = <div class="zufallsElement">|</div>
    renderObj.stdWrap.required = 1
  }
}
#### Listing 2 (Zufallselement auf jeder Seite einbinden)
{
...
  subparts.col3_innen = COA
  subparts.col3_innen.5 < temp.zufallsElement
  subparts.col3_innen.10 < styles.content.get
  subparts.col3_innen.20 < temp.contentAreaTemplate
  subparts.col3_innen.30 < styles.content.get
  subparts.col3_innen.30.select.where = colPos=7
  subparts.footer < temp.footer
...
}

Dokumentation und Anleitungen