Im gesamten folgenden Text geht es um die Sprache, in der die Skelette abgefasst werden, die unter SPIP die Darstellung der Webseiten bestimmen; wenn Sie die vorangegangenen Erklärungen verstanden haben, wissen Sie also, dass wir uns mit «.html»-Dateien befassen.
Das vorliegende Dokument liest sich gewollt technisch (es handelt sich hier um technische Referenzen); möglicherweise möchten Sie lieber mit unserem Einführungs-Tutorial «SPIP Schritt für Schritt» beginnen, das mehr didaktisch konzipiert ist, und dann hierher zu einer genaueren Dokumentation zurückkehren.
Die Schleifen
Der grundlegende Begriff der SPIP-Sprache ist die Schleife (frz. boucle).
- Die Logik der Schleife
Eine Datenbank besteht klassischerweise aus einer Liste von Elementen: in unserem Falle sind das eine Liste von Artikeln, eine Liste von Rubriken, eine Liste von Autoren usw. Um die Site zu «fabrizieren», muss man also aus dieser Liste bestimmte Elemente herausholen:
- der Basisvorgang ist die Entnahme eines einzelnen Elements aus einer Liste, beispielsweise für die Anzeige des gewünschten Artikels;
- öfter möchte man aber auch mehrere Elemente aus einer Liste entnehmen; beispielsweise möchte man in der Seite für eine Rubrik alle Artikel anzeigen, die in dieser Rubrik enthalten sind, ebenso alle Unterrubriken, die in dieser Rubrik enthalten sind;
- noch spitzfindiger: es kommt häufig vor, dass es keine zufriedenstellenden Elemente an diesem oder jenem Ort gibt; in diesem Falle muss SPIP auch mit dem eventuellen Nichtvorhandensein dieser Elemente zurechtkommen. Nehmen wir zum Beispiel an, das Skelett für die Anzeige der Rubriken verlangt die Anzeige aller Unterrubriken, die in einer Rubrik vorhanden sind - was tun, wenn es in dieser besonderen Rubrik keine Unterrubriken gibt?
Diese drei Situationen werden mittels des einen Begriffs der Schleife gemeistert, der in einem Aufwasch die Handhabung der Anzeige eines einzelnen Elements, mehrerer aufeinanderfolgender Elemente oder des Nichtvorhandenseins von Elementen erlaubt.
Das System der Schleife erlaubt in einem eindeutigen Code:
- anzuzeigen, an welcher Stelle des HTML-Codes man welchen Elemente-Typ benötigt (an diesem Ort möchte man die Liste der Artikel verarbeiten, an jenem Ort möchte man die Liste der Unterrubriken einfügen...);
- ein einzelnes individuelles Element anzuzeigen;
- anzugeben, auf welche Weise eine Liste von mehreren Elementen angezeigt werden soll;
- zu bestimmen, was man anzeigen möchte, wenn es kein korrespondierendes Element gibt.
Analogien zur Programmierung in PHP/MySQL
Diejenigen, die bereits MySQL-Anfragen in PHP programmiert haben, wissen, dass sich die Behandlung in zwei Stadien abspielt:
- die Konstruktion der Syntax der Anfrage (die beispielsweise beinhaltet: «ich möchte die Liste der Artikel erhalten, die sich in der folgenden Rubrik befinden...»);
- die Analyse und die Anzeige der Resultate mittels einer Schleife.
Das sind die beiden Vorgänge, die bei SPIP in den Schleifen verwaltet werden.
Die Tags von SPIP
Dank der Schleifen hat man also einzelne Elemente oder Listen von Elementen erhalten: beispielsweise eine Liste von Artikeln oder eine Liste von Rubriken.
Indessen ist ein jedes Element aus diesen Listen genaugenommen aus mehreren Elementen zusammengesetzt: ein Artikel besteht beispielsweise aus einem Titel, einem einleitenden Titel, einem Untertitel, einem Einleitungstext (in der deutschen SPIP-Version heißt er «Kopf», in der französischen «chapeau»), aus einem Haupttext, einem Postskriptum usw. Es gibt deshalb spezielle SPIP-Tags, welche die genaue Angabe erlauben, an welcher Stelle diese Elemente angezeigt werden sollen: «platziere den Titel hier», «platziere den Text hier»...
Die Tags im Inneren der Schleifen
Hier sehen wir an einem klassischen Beispielfall das allgemeine Funktionsprinzip einer von ihren Tags begleiteten Schleife (Achtung, es handelt sich nicht um Code in der SPIP-Sprache, sondern um eine logische Beschreibung):
SCHLEIFE : zeige die Liste der Artikel in dieser Rubrik an- zeige hier den Titel des Artikels an
- zeige hier den Untertitel an
- zeige hier den Text an
Wenn diese Schleife von SPIP analysiert wird, können dabei drei verschiedene Resultate herauskommen:
-
Es gibt überhaupt keine Artikel in dieser Rubrik.
Wie leicht einzusehen ist, wird in diesem Falle keines der Elemente «zeige hier den (Titel, Untertitel, ...) an» benutzt. Stattdessen könnte man, wenn man diese Möglichkeit weise vorhergesehen hat, eine Botschaft von der Art «Hier gibt's keine Artikel» anzeigen.
-
Es gibt einen einzigen Artikel in dieser Rubrik.
In diesem Falle wird ganz einfach die HTML-Seite nach dem Modell der Schleife konstruiert:
- Titel des Artikels
- Untertitel
- Text des Artikels
-
Es gibt mehrere Artikel in dieser Rubrik.
Die Beschreibung der Seitendarstellung («zeige hier...an») wird dann für einen Artikel nach dem anderen durchgerechnet. Daraus ergibt sich einfach:
- Titel des Artikels Nummer 1
- Untertitel des Artikels Nummer 1
- Text des Artikels Nummer 1
- Titel des Artikels Nummer 2
- Untertitel des Artikels Nummer 2
- Text des Artikels Nummer 2
- ...
- Titel des letzten Artikels
- Untertitel des letzten Artikels
- Text des letzten Artikels
Der folgende Inhalt dieses Referenzführers ist nach folgendem Muster aufgebaut:
- allgemeine Syntax der Schleifen;
- allgemeine Syntax der SPIP-Tags;
- darauf folgend dann eine spezifische Seite für jeden Schleifen-Typ, die anzeigt, welche Tags verwendet werden können.