Ein Skelett, mehrere Artikel

Nun beginnt es Nutzen abzuwerfen

Hier kommt der erste Kontext.

Die vorangegangene Lektion brachte uns bei, den Inhalt von Artikel Nummer 1 aus der Datenbank zu holen und eine Webseite aus ihm aufzubauen. Lassen Sie uns das verallgemeinern. [1]

Unser Skelett ist ziemlich unnütz, wenn es nur Artikel Nummer 1 darstellen kann. Lassen Sie es uns verbessern, so daß es jeden beliebigen Artikel darstellen kann:

Dazu werden wir unsere Webseite mit einem Parameter id_article=2 aufrufen. Tippen Sie das folgende in Ihren Webbrowser: «http://meine_site.net/spip.php?page=tutorial&id_article=2».

Und es erscheint... immer noch Artikel Nummer 1. Lassen Sie uns die Zeile im Skelett tutorial.html modifizieren, die die «Artikel-Schleife» definiert:
<BOUCLE_article(ARTICLES){id_article}>

(Wie Sie sehen, können Sie einfach {id_article=1} durch {id_article} ersetzen.)

Nun müßte http://meine_site.net/spip.php?page=tutorial&id_article=2 den Artikel Nummer 2  [2] auf den Schirm bringen.

Die Schleife BOUCLE_article wird in einem «Kontext» ausgeführt, in dem id_article gleich 2 ist (das heißt gleich dem Wert, der in der URL übergeben wurde). Wenn Sie in dem Skelett {id_article=1} spezifizieren, wird es nach Artikel Nummer 1 suchen; wenn Sie aber nur {id_article} spezifizieren, wird es nach dem Artikel suchen, dessen Nummer durch den Kontext angezeigt wird (hier die URL).

Klicken Sie nun auf:
-  http://meine_site.net/spip.php?page=tutorial&id_article=1,
-  http://meine_site.net/spip.php?page=tutorial&id_article=2 und
-  http://meine_site.net/spip.php?page=tutorial.

Sehen Sie den Unterschied? Die ersten beiden Seiten geben Ihnen die Artikel Nummer 1 und Nummer 2, die dritte hat kein id_article in ihrem Kontext und erzeugt einen Fehler.

Gratulation! Ihr Skelett ist nun «kontextuell».

Anmerkungen

[1In den ersten Jahren trugen die PHP-Dateien von SPIP die Erweiterung .PHP3. Sollten in diesem Tutorial noch URLs existieren, die z.B. spip.php3 enthalten, genügt es, die Dateiendung durch .php zu ersetzen, damit der Code mit den neueren SPIP-Versionen funktioniert. Falls etwas unklar bleibt, hilft ein Blick auf die englischen und französischen Fassungen der Artikel, die wie auch alle anderen u.U. vorhandenen Übersetzungen jeweils unter dem Text verlinkt sind.

[2das tut es nicht? Sollte es aber...

Autor wshSchlegel Publié le : Mis à jour : 28/10/20

Traductions : عربي, català, corsu, Deutsch, English, Español, فارسى, français, italiano, 日本語, Nederlands, polski, Português, русский, slovenčina, svenska, Türkçe, українська