Schleifen und Beitrags Loops in Smarty

Werten Sie in eigenen Templates mit der Template-Engine Smarty, Variablen aus und steuern dadurch die individuelle Ausgabe des Content Ihrer Webseite.

home » smarty » schleifen und beitrags loops im smarty template parser

Beitrags-Loop

Die bisherigen Codebeispiele zum Thema Templating mit der Smarty Engine zeigte eher statische Templates, also Strukturen die fest vorgegeben sind. Haben Sie aber ein Template das dynamisch auf den Inhalt reagieren soll, dann wird es schwieriger, Sie müssen zum Beispiel Schleifen im Template implementieren. Dazu folgendes Codebeispiel aus meinem Template:

071  {for $i=1 to {$max_beitrag} step 3}
072    <div class="row">
073      <div class="col-sm-4">{$beitrag{$i}}</div>
074      <div class="col-sm-4">{$beitrag{$i+1}}</div>
075      <div class="col-sm-4">{$beitrag{$i+2}}</div>
076    </div>
077    <br>
078  {/for}

Code

Der Code oben stammt aus meinem Template home.php und baut alle 3 steps eine neue row (Class aus dem Bootstrap CSS die eine art Tabellen-Zeile erzeugt) auf, die dann aus drei Spalten besteht. Die Templatevariable $beitrag1, $beitrag2 und $beitrag3 wird durch den Schleifenzähler konkatiniert und enthält den Content der Spalte (Class col-sm aus dem Bootstrap erzeugt eine Spalte innerhalb der row).

Dem Template wird mit der Variable $max_beitrag aus der Steuerung index.php übermittelt, wie viele Beiträge überhaupt existieren, zum Beispiel 9. Folglich baut diese Schleife 3 Zeilen zu je 3 Spalten im Zeitungslook auf der Webseite auf.

Auf meiner (anderen) Webseite erzeug dieser Code das oben gezeigte Layout aus verschiedenen Textdateien die im Verzeichnis texte liegen. Würde ich mehr Textdateien im Verzeichnis texte anlegen, dann würde der Code in index.php dies bemerken und die Information ($max_beitrag) an das Template übergeben. Das Template erweitert sich daraufhin selbstständig durch die Schleifenstruktur weiter nach unten, so lange auch Textbausteine vorhanden sind.

Anmerkung: Die Anzahl der Beiträge muss folglich ein Vielfaches von 3 sein, um in jeder Zeile drei Spalten zu füllen. Fehlt der Inhalt einer Spalte, erscheint eine Fehlermeldung.


FlightCMS
2024-01-28
Beitrag,Sortieren,Datum,Titel,ASC,DESC
post

WordPress 6 - Das umfassende Handbuch. Über 1.000 Seiten zu WordPress inkl. Themes, Plug-ins, WooCommerce, SEO und mehr - Mit WordPress mehr als nur ein Blog betreiben - es ist auch ein weit verbreitetes Content-Management-System. Im Buch finden Sie das Rundumpaket für jedes Anwendungsszenario: alle Installationen, Entwicklung und Administration eigener Themes und Plugins und Einstieg in HTML und CSS. Als Fortgeschrittener in Sachen WordPress werden Sie viele wertvolle Tipps und Hilfe finden, etwa bei Themen wie Custom Post Types oder Programmieren von Erweiterungen. So sind Sie schnell in der Lage, Ihr Webprojekt zum Erfolg zu bringen.

Wir können mit so genannten Affiliate-Links den Betrieb der Webseite etwas unterstützen, für Sie als Leser ist das natürlich vollkommen kostenlos.

Impressum


CMSWorkbench ist ein Tec- und Entwickler-Seite, rund um die Webtechniken der Content Management Systeme.

Datenschutz


Diese Webseite nutzt keine Cookies oder sonstige Speichermechanismen, die einen Rückschluss auf das Leserverhalten zulassen.

Kontakt


Sie können mit der Redaktion oder dem Administrator via eMail unter der Adresse: Kontakt@Oliver-Lohse.de aufnehmen.