Neben der Home-Seite können auch alle Seiten die über das Modul showpage.php aufgerufen werden über ein Template angezeigt werden. Der Inhalt der Seite wird über {sys:content}
eingebunden.
Nachfolgend ein Beispiel für eine Standardansicht:
<div class="container"> <div class="row"> <div id="links" class="col-md-2"> {cms:mainmenu} </div> <div style="background-color: #fffeed; margin-left: 20px;" id="rechts" class="col-md-9"> {sys:content} </div> </div> </div>
Das obige Beispiel nutzt 2 Spalten. In der linken Spalte wird ein HTML-Menü angezeigt, in der rechten Spalte der eigentliche CMS-Artikel.
Es können bei Bedarf weitere Artikel des CMS eingebunden werden, hierzu wird eine Variable in der Form {cms:xxx}
genutzt. Wobei xxx durch den Seitennamen der CMS-Seite ersetzt werden muss.
Achtung: Eine Verschachtelung von Aufrufen ist nicht zulässig!
Neu ab Version 12.7.3
Es können zusätzlich die Daten des aktuellen Nutzers in der Ausgabe integriert werden. Dadurch sind persönliche Anreden oder auch vorausgefüllte Formularfelder realisierbar. Allen Feldern muss als Prefix USER_
vorangestellt werden. Um also Vorname und Nachname eines Nutzers anzuzeigen, wäre folgender Eintrag notwendig:
<h3>Guten Tag {USER_vorname} {USER_nachname}</h3>
Seit Version 12.8.3 ist es möglich über die Systemvariable {kategorieliste:[ID]}
eine Übersicht aller Artikel der entsprechenden Kategorie auszugeben. Dies ist nützlich für z. B. Hilfethemen etc. Die ID entspricht dem nKey der Kategorie wie diese in den Dropdownlisten angelegt wurde.
{kategorieliste:99}
Um eine flexiblere Seitengestaltung zu ermöglichen können alternative Layouts verwendet werden. Hierzu ist lediglich beim Seitenaufruf der Name des Templates in Verbindung mit dem Schlüsselwort tpl
anzugeben. Um z. B. die Impressumsseite mit einem alternativen Layout, welches unter dem Seitennamen alternatives-template
im CMS gespeichert ist, aufzurufen, wäre folgende Syntax notwendig:
showpage.php?seite=impressum&tpl=alternatives-template
Das zu ladende Template muss als Mindestvoraussetzung die Systemvariable {sys:content}
enthalten.
Achtung: Aus Sicherheitsgründen werden nur Templates verwendet, die als System-Template gekennzeichnet sind.
Es ist möglich ganz auf ein vordefiniertes Layout zu verzichten, dann muss an die URL &plaintext
angehangen werden. Die Ausgabe erfolgt dann ohne weitere Formatierungen nach dem Menü und vor der Fußzeile.
Diese Funktion steht ab Version 12.7.4 zur Verfügung. Mit Einführung der Version 12.9.0 kann der gleiche Effekt wie &plaintext erzeugt werden, wenn als Alternativtemplate plain
oder plaintext
angefügt wird. Der Seitenaufruf erfolgt also z. b. folgendermaßen showpage.php?seite=impressum&tpl=plain
.
Mit Einfühung von Version 12.9.0 steht ein auf Kategorien basierender Blog zur Verfügung. Hierbei werden automatisch aus bestimmten Kategorien Auswahllisten generiert. Einsatzgebiete können ein Hilfesystem, Newsübersicht oder Artikelblog sein.
Die Systemvariable {kategorieblog:[Parameter]}
dient der Anzeige. Es stehen eine Reihe von Parametern zur Verfügung um die anzuzeigenden Beiträge-/Artikel zu bestimmen. Als Mindestangabe ist lediglich eine Kategorie-ID anzugeben: kat=6
.
Parameter | Wertebereich | Beispiel | Beschreibung |
---|---|---|---|
kat | 1-999 | kat=3 | Zeigt die Artikel aus der angegebenen Kategorie. Mehrere Kategorien können durch Komma getrennt angegeben werden. |
order | asc/desc | order=desc | Listet die Artikel in absteigendender sortierreihenfolge |
limit | 0-9999 | limit=10 | Zeigt nur die angegebene Anzahl an Artikeln an. Ohne Angabe bzw. mit 0 werden alle Artikel ausgegeben |
orderfeld | id/erstellt/aktualisiert/seite/rand | seite | Sortiert nach dem angegebenen Feld. Ein Sonderfall ist rand, hierbei werden die Artikel in zufälliger (random) Reihenfolge ausgegeben |
cols | 1-12 | cols=2 | Anzahl der Spalten in der die Artikel angezeigt werden sollen. |
main | Ganzzahl 1-9999 | main=1 | Anzahl der führenden Artikel, die über die gesamte Breite ausgegeben werden. Siehe Beispiele weiter unten. |
showtitel | 0/1 | showtitel=1 | Zeigt den Seitentitel an |
sprache | de/en/nl | sprache=en | Berücksichtigt nur Artikel in der gewählten Sprache. Wird keine Sprache angegeben, so wird die Spracheinstellung des aktuellen Nutzers berücksichtigt. Achtung: Hierbei wird kein Fall-Back-Artikel angezogen sondern nur die tatsächlich existierenden Artikel in der jeweiligen Sprachvariante! |
tpl | Templatename | tpl=news | Das Template, welches für die verlinkten Artikel angezeigt werden soll. Wird kein Template angegeben, so wird das Standard Showpage-Template verwendet. Zusätzlich steht noch plain bzw. als Synonym plaintext zur Verfügung. |
Die Reihenfolge in der die Parameter angegeben werden spielt keine Rolle. Ebenso wird keine Groß-/Kleinschreibung beachtet. Die Trennung der Parameter muss mit einem Semikolon ;
erfolgen. Der Parameter wird mit einem Gleichheitszeichen =
zugewiesen.
{kategorieblog:kat=3;limit=4;orderfeld=rand} | Es werden 4 Artikel aus der kategorie 3 angezeigt, die Sortierreihenfolge ist zufällig. |
{kategorieblog:kat=3;order=desc;orderfeld=aktualisiert} | Aus Kategorie 3 werden alle Artikel aufgelistet. Die Reihenfolge ist absteigend sortiert nach dem Aktualisierungsdatum. |
{kategorieblog:kat=1,3;orderfeld=erstellt,limit=10,main=1,cols=3} | Aus Kategorie 1 und 3 werden 10 Artikel aufgelistet. Die Reihenfolge ist aufsteigend sortiert nach dem Erstellungsdatum. Die Anzeige ist 3-spaltig, wobei es 1 Hauptartikel gibt, der über die gesamte Seitenbreite angezeigt wird. |
Zur Beachtung: Der Kategorienblog berücksichtigt sowohl die Berechtigungen, die aktuell gewählte Sprache und den Status.
Diese Ansicht baut auf dem Accordion-Modul von Bootstrap auf. Hierbei werden Artikel untereinander in einer Übersicht angezeigt. Die Ansicht erfolgt in einem sog. Panel mit einer Überschrift. Diese Panel-Überschrift kann angelickt werden, wodurch der Inhalt ein-/ausgeblendet wird.
Die Anwendung erfolgt analog zu der Blogansicht, allerdings mit dem Schlüsselwort Accordion
. Die Verwendung der sonstigen Schlüsselwörter erfolgt wie oben beschrieben.
{accordion:kat=22;order=desc;orderfield=seite;limit=4;showintro=0}