Einfaches Gästebuch
Aus Contao Community Documentation
betrifft | |
---|---|
Contao Version | ab 2.9 |
Unvollständiger Artikel: dieser Artikel ist noch nicht sauber bearbeitet.
Bitte erweitere ihn und entferne erst anschliessend diesen Hinweis. |
Inhaltsverzeichnis
Einleitung
Ein einfaches Gästebuch kann mit der Kommentarfunktion von Contao erstellt werden: Man braucht lediglich eine neue Seite mit 2 Inhaltselementen - und ist damit eigentlich schon fertig. Die folgende Anleitung zeigt die Schritte mit Screenshots aus der Online-Demo unter Music Academy.
Voraussetzung
Diese Anleitung setzt einige einfache Voreinstellungen voraus. Es sollte bereits ein generelles Layout, ein paar Seiten in der Seitenstruktur und eine einfache Navigation geben. Gut gerüstet ist man, wenn man die Anleitung Die erste Webseite bereits umgesetzt hat.
Überblick / Kurzbeschreibung
Hier ein Überblick über die ToDos. Wer sich schon ein wenig in Contao umgesehen hat kommt vielleicht schon mit diesen Stichpunkten ans Ziel.
- Anlegen einer regulären Seite "Gästebuch" an geeigneter Stelle im Seitenbaum (damit sollte die Seite auch in der Navigation sichtbar sein)
- dabei wird automatisch ein Artikel "Gästebuch" erstellt, der noch keine Inhalte hat
- Ein neues Inhaltselement Text hinzufügen. Dieses mit der Überschrift "Gästebuch" und ein paar einleitenden Worte füllen
- Ein neues Inhaltselement vom Typ "Kommentar" hinzufügen
- Fertig!
Einrichten des Gästebuches im Detail
Eine neue Seite
Zuerst erstellt man im Backend eine neue Seite. Diese beherbergt alle Zutaten für das Gästebuch. Unter
- Backend-Module > Layout > Seitenstruktur
findet man eine Übersicht aller bisher angelegten Seiten. Sieht man nichts oder vermisst man Seiten, können diese über "Alle öffnen/schließen" eingeblendet werden. Über "Neue Seite" wird eine neue Seite angelegt. Über die nun eingeblendeten gelben Pfeile, kann man bestimmen, wo in der Seitenstruktur das Gästebuch eingehängt wird.
Artikel bearbeiten
Nachdem die neue Seite erstellt ist, kann der Artikel unter
- Backend-Module > Inhalte > Artikel
bearbeitet werden. Nach einem Klick auf den Stift wird der Artikel geöffnet. Ich habe als erstes ein Text-Element mit der Überschrift "Gästebuch" und einem kurzen einleitenden Text eingefügt. Als nächstes wird das Kommentar-Element eingefügt. Jetzt ist das Gästebuch zwar fertig, jedoch noch nicht ganz optimal.
Kommentar-Template bearbeiten
Bei dem Kommentar-Modul ist das Formular für ein neues Kommentar am Ende der Kommentare. Für das Gästebuch sollte es am Anfang sein. Dafür muss das Template angepasst werden.
neues Template erstellen
Unter *Layout > Templates auf neues Template klicken. In der der Liste taucht "ce_comments" zweimal auf. Sowohl von der xhtml als auch von der html5-Version eine Kopie erstellen. Das Zielverzeichnis kann "templates" bleiben.
Template bearbeiten
Mit einem klick auf den Stift wird das Template umbenannt. Ich habe es ce_guestbook genannt. Nun muss das Template bearbeitet werden. Mit einem klick auf bearbeiten öffnet sich der Quell-Code:
xhtml-Version
<?php $this->extend('block_searchable'); ?>
<?php $this->block('content'); ?>
<?= implode(, $this->comments) ?> <?= $this->pagination ?> <?php include $this->getTemplate('mod_comment_form', 'xhtml'); ?>
<?php $this->endblock(); ?>
Der include-Befehl muss vor den implode-Befehl. Der Code sollte nun so aussehen:
<?php $this->extend('block_searchable'); ?>
<?php $this->block('content'); ?>
<?php include $this->getTemplate('mod_comment_form', 'xhtml'); ?> <?= implode(, $this->comments) ?> <?= $this->pagination ?>
<?php $this->endblock(); ?>
Das selbe nun mit dem html5-Code:
<?php $this->extend('block_searchable'); ?>
<?php $this->block('content'); ?>
<?= implode(, $this->comments) ?> <?= $this->pagination ?> <?php include $this->getTemplate('mod_comment_form', 'html5'); ?>
<?php $this->endblock(); ?>
So sollte der Code nach der Änderung aussehen:
<?php $this->extend('block_searchable'); ?>
<?php $this->block('content'); ?>
<?php include $this->getTemplate('mod_comment_form', 'html5'); ?> <?= implode(, $this->comments) ?> <?= $this->pagination ?>
<?php $this->endblock(); ?>
Template im Element einbinden
Das Einbinden des Templates im Element ist sehr einfach. Unter
- Inhalte > Artikel
bearbeiten wir nochmal den Gästebuch-Artikel und dort das Kommentar-Element. Unter
- Template-Einstellungen
Kann unter Individuelles Template das ce_guestbook-Template ausgewählt werden. Speichern und sich das Ergebnis anschauen.