Einleitung Seminare verwalten Vorlagen erstellen Platzhalter Vorlagen-Import Script-Code einbinden
Dies ist sicherlich der anspruchsvollste Teil der Umstellung auf Seminartimer. Für die optimale Darstellung der Termine können Sie Vorlagen erstellen. Diese Vorlagen können flexibel gestaltet werden, so dass nahezu jedes Layout erzielt werden kann. Die ermöglicht die perfekte Anpassung an Ihr Layout, an Ihre Internetseiten. Für die Erstellung von Vorlagen sind Html-Kenntnisse nötig.
Jede Vorlage definiert die Darstellung für eine Terminliste. Die einzelnen Vorlagen werden in einer oder auch mehreren Vorlagen-Dateien untergebracht. Sie können theoretisch so viele Vorlagen in einer Vorlagen-Datei unterbringen, wie dies in Ihrer Version möglich ist (siehe Leistungsübersicht). Bei zu vielen Vorlagen kann eine Datei unübersichtlich werden. Und dann ist vielleicht sinnvoll, die einzelnen Vorlagen auf mehrere Vorlagen-Dateien zu verlagern.
Seminartimer kennt Bereiche und Platzhalter.
Der Beginn eines Bereichs wird so gekenntzeichnet: {Bereichname}.
Das Ende des Bereichs wird dann so gekenntzeichnet: {/Bereichname}.
Bereiche können ein- oder ausgeblendet werden. Und in Bereich können Platzhalter untergebracht werden. Bereiche können auch verschachtelt werden. D.h. in Bereichen können weitere Bereiche, man könnte dann von Unterbereichen sprechen, integriert werden.
Platzhalter werden so gekennzeichnet: {{Platzhalter}}. Es gibt insgesamt 12 Platzhalter, mit denen die Informationen der einzelnen Seminare in die Terminlisten eingebracht werden.
Sie können die Informationen zu den Seminaren, welche Sie darstellen wollen, mit diesen Platzhaltern beliebig wählen.
Schauen wir uns konkrete Beispiele für Vorlagen an. Die Vorlagen-Datei für unser Beispielprojekt sieht in der Browseransicht so aus:
Diese Datei enthält 6 Vorlagen. Hier in der Grafik werden 4 davon angezeigt. Wir werden uns beispielhaft drei davon näher anschauen. Wenn Sie auf diese Grafik klicken, wird es vergrößert dargestellt.
So sieht es im Browser aus:
Der HTML-Code dieser Vorlage:
Eine Vorlage wird zunächst einmal komplett als Bereich definiert. Die
Syntax lautet: {(Template)Vorlagenname}. Und das Ende dieser Vorlage wird dann so gekennzeichnet: {/(Template)Vorlagenname}.
Auf unser Beispiel bezogen, lautet die Kennzeichnung {(Template)TabelleAlleSeminare}.
Der Name der Vorlage lautet demnach TabelleAlleSeminar. Unter
diesem Namen wird die Vorlage dann später auch nach dem Import
in der Vorlagenliste geführt werden.
Diese Vorlage hat die
Aufgabe, sämtliche Seminare dieses Anbieters darzustellen. Die Termine
werden in einer Tabelle ausgegeben. Auf dieser Seite
haben wir noch einen Zusatz untergebracht, der dann die separate
Aufteilungen ermöglicht. Dies wäre für PHP-Programmierer
ebenfalls möglich.
Die Seite finden Sie hier: http://www.entspanntinkoeln.de/ausbildungen-fortbildungen-seminare-entspannung.php
Schauen wir uns nun den Aufbau einer Vorlage an. Eine Vorlage ist zunächst einmal wie oben beschrieben als Bereich in einer Datei angelegt. In diesem Bereich sind nun weitere Bereiche untergebracht in einer verschachtelten, hierarchischen Struktur.
{/(Template)Vorlagenname}.
{Termine}
{0}
{/0}
{1}
{style1}
{/style1}
{style2}
{/style2}
{{PLATZHALTER}}
{/1}
{/Termine}
{/(Template)Vorlagenname}.
{Termine}: Dies ist der variable Teil der Vorlage. Alles was im Vorlagenbereich ist aber außerhalb des Bereichs {Termine} wird nicht verändert. Hier können wie in unserem Beispiel auch bspw. Tabellenköpfe und Tabellenfüße untergebracht werden.
Im Bereich {Termine} sind Unterbereiche definiert:
{0}: Dieser Bereich wird nur dann angezeigt, wenn keine Termine in der betreffenden Abfrage gefunden wurden.
{1}: In diesem Bereich werden die variablen Inhalte aus der
Datenbank eingebaut. Dies geschieht über
Platzhalter. Darüber hinaus
gibt es optional noch die Möglichkeit, eine mehrfarbige Tabelle
zu realisieren. Dies kann mit den Bereichen
{style1} und
{style2}, die wiederum Unterbereiche vom Bereich {1} sind. Wenn
diese definiert sind, werden die beiden abwechselnd von Termin
zu Termin dargestellt.
Dieser Bereich {1} wird pro Termin,
den die Abfrage ergeben hat, einmal dargestellt. Nehmen wir mal,
eine Abfrage ergibt 14 Termine. Dann wird dieser Bereich {1}
ausgewertet und dann nacheinander dargestellt.
In dieser Vorlage die Möglichkeit genutzt, zu jedem Seminar eine eigene Url-Seite angeben zu können. Dadurch kann ein Link zu der Seite, auf der dann das Seminar ausführlich beschrieben wird, gesetzt werden. Der Platzhalter lautet {{Url}}.
So sieht es im Browser aus:
Der HTML-Code dieser Vorlage:
IIn dieser Vorlage erkennen Sie wieder deutlich das
Vorlagenschema. Diese Vorlage ist deutlich einfach aufgebaut.
Diese stellt auf der Startseite eine Anzahl von aktuellen
Seminarterminen dar. Konkret in unserem Beispiel die 4
zeitnächsten Seminartermine. Diese Anzahl könnte beliebig
verändert werden
Diese Auflistung finden Sie hier:
http://www.entspanntinkoeln.de.
So sieht es im Browser aus:
Der HTML-Code dieser Vorlage:
Die Auflistung ist diesmal wieder als Tabelle mit 4 Spalten
realisiert.
Ein interessantes Detail: über die Grafik
"anmelden" wird zu einem Anmeldeformular verlinkt. Dabei werden
Informationen zum jeweiligen Seminar als Parameter übergeben.
Diese können dann in der Zieldatei ausgewertet und benutzt
werden.
Diese Auflistung finden Sie hier:
http://www.entspanntinkoeln.de.
Und hier noch ein Beispiel, dass es auch ohne Html-Code geht. Ein Einsatz wäre in Emails, als reiner Text. Sie erhalten damit eine Auflistung in reiner Textform.
Manche Event-Anbieter unterteilen ihre gesamte Terminübersicht gerne in Monate. Wohl um eine bessere Übersicht zu erzielen. Mit Seminartimer läßt sich dies auch realisieren.
So sieht es im Browser aus:
Der HTML-Code dieser Vorlage:
Wenn Sie sich den HTML-Code betrachten, erkennen Sie, dass das Template nur einen Teil der Tabelle einnimmt. So kann die Tabelle in sich unterteilt werden. Theoretisch würde für die Vorlagendefinition dieser Teil genügen. Er wurde deshalb in eine komplette Tabelle integriert, weil dadurch eine bessere Vorschau möglich ist. In der HTML-Datei muß in diesem Fall die ganze Tabelle nochmals eingebaut werden. Lediglich der Template-Teil wird durch den generierten Code ersetzt.
Im Ergebnis sieht das dann so aus:
Wenn wir die gesamt Tabelle als Template definiert hätten (also die Kennzeichner {(Template)TabelleAlleSeminareNachMonaten} vor und hinter den Table-Tag platziert hätten, würde Seminartimer für jeden Monat ein komplett neue Tabelle mit Kopf- und Fußzeile darstellen.
Wie wird diese Unterteilung realisiert? Es gibt 3 Platzhalter:
Sobald Seminartimer in der Vorlage einen Platzhalter für die Monatsangeben in der Vorlage findet, nimmt er automatisch eine Unterteilung in Monate vor. Es muß keine weitere Einstellung vorgenommen werden. Findet er keinen Platzhalter für die Monatsangaben, dafür aber den Platzhalter {{year}}, nimmt er eine Unterteilung nur nach Jahren vor.
Seminartimer benutzt das Datum des Seminarbeginns für diese Informationen zur Unterteilung der Terminlisten.