3. Templatesystem

Inhaltsverzeichnis

3.1. Ausgabeplatzhalter
3.1.1. Value-Platzhalter
3.1.2. Text- und URL-Platzhalter
3.1.3. Guestbook-Platzhalter
3.2. Eingabeplatzhalter
3.2.1. Gb_text-Platzhalter
3.2.2. Gb_url-Platzhalter
3.2.3. Guestbook-Platzhalter

Der Abschnitt "Rubrikseite" des Artikeltemplates ist zuständig für die Anzeige der Gästebuch-Artikel (auf der index.php), sowie eine Bestätigungsseite des gerade eingetragenen Artikels.
Der Abschnitt "Artikelseite" des Artikeltemplates beinhaltet das Formular zum Eintragen eines Artikels (auf der detail.php).
Der Abschnitt "Javascript/PHP" des Artikeltemplates wird benutzt, um auf der Rubrikseite (index.php) die Kommentare zu anderen Artikel auszugeben.

Die Platzhalter für dieses Gästebuch sind genauso aufgebaut, wie die herkömmlichen ConPresso-Platzhalter, nur dass die Platzhalter-Typen "guestbook", "gb_text" und "gb_url" zu den normalen Typen "text", "url", "value", usw. hinzugekommen sind.

Zur Erinnerung folgt nocheinmal die Syntax der ConPresso-Platzhalter:
"<!-- PlatzhalterTyp: PlatzhalterName; OptionOhneWert; Option: WertDerOption; -->"

Bedingte Platzhalter (ifSet/ifNotSet)

Bei vielen speziellen Platzhaltern für das Gästebuch funktionieren auch die sog. "bedingten" Platzhalter: "<!-- IfSet: ...; -->" und "<!-- IfNotSet: ...; -->".
Dies richtet sich danach, ob eine Verwendung dieser Platzhalter in irgend einem Teil des Templates Sinn macht bzw. logisch ist und nicht zwangsläufig danach, ob die Platzhalter mit Inhalt gefüllt sind.
Bei Platzhaltern die nur Hyperlinks ausgeben, ist ifSet WAHR, wenn dieser Link angeklickt wurde.

Beispiel 3.1. Funktion eines bedingten Platzhalters

<!-- ifSet: fastedit; -->
 <tr>
  <td colspan="2">
   Eintrag nochmal <!-- guestbook: fastedit; label=bearbeiten; -->
  </td>
 </tr>
<!-- /ifSet -->

Dieses Beispiel stammt aus dem Abschnitt "Rubrikseite" des Artikeltemplates.
Wird ein Gästebuch-Artikel nach dem Eintagen noch einmal zur Bestätigung angezeigt, besteht die Möglichkeit, diesen noch einmal zu bearbeiten. Dazu erzeugt der Platzhalter "<!-- guestbook: fastedit; label=bearbeiten; -->" einen Link zum nochmaligen Bearbeiten.
Dieser Link und der zugehörige Code soll aber nur auf einer Bestätigungsseite ausgegeben werden und nicht auf jeder "Rubrikseite". Demnach ist dieses "ifSet" nur auf einer Bestätigungsseite WAHR.

Nach dem Anklicken dieses Links, wird das Formular mithilfe des Abschnittes "Artikelseite" des Artikeltemplates angezeigt.
Auf diesem Abschnitt "Artikelseite" des Artikeltemplates ist dieses "ifSet" wiederum WAHR, weil dieser Link angeklickt wurde. Es wird also die folgende Überschrift ausgegeben:

<!-- ifSet: fastedit; -->
 <h2>
  Eintrag: "<!-- Value: Title -->" nocheinmal bearbeiten
 </h2>
<!-- /ifSet -->

Beispiel 3.2. Funktion eines bedingten Platzhalters

<!-- ifSet: link2comment; -->
 <h2>
  Eintrag: "<!-- Value: Title -->" kommentieren
 </h2>
<!-- /ifSet -->

Das zweite Beispiel stammt aus dem Abschnitt "Artikelseite" des Artikeltemplates.
Wenn der durch den Platzhalter "<!-- guestbook: link2comment; -->" erzeugte Link auf der "Rubrikseite" angeklickt wurde, dann wird zum Formular auf der "Artikelseite" verlinkt.
Die Bedingung "ifSet" gibt in diesem Beispiel die Überschrift nur dann aus, wenn dieser Link angeklickt wurde. Und nur dann ist dieses "ifSet" WAHR.