Teil 1 Was ist Smarty eigentlich? - Smarty Template Engine

Die Template-Engine Smarty ist sehr beliebt für sehr sichere Webseiten. Dieser Workshop führt Sie in die Welt von Smarty ein und startet mit der Installation

WordPress 5 Das Praxisbuch

WordPress 5 Das Praxisbuch - WordPress ist weltweit das beliebteste CMS-Tool. Dieses Buch führt Sie in die Welt der Blogs ein, ohne Programmierkenntnisse vorauszusetzen. Verschiedene Arten von Blogs, passende Themes sowie hilfreiche Plugins werden vorgestellt, das Erstellen von Beiträgen und der Umgang mit Bildern beschrieben. Sie erfahren wichtige Details zu Kommentaren, Newslettern, Abonnenten sowie zum Administrationsbereich. Wertvolle Tipps zur Suchmaschinenoptimierung runden das Werk ab. Der Titel ist für Anfänger und Fortgeschrittene zum Lernen und Nachschlagen geeignet. Ein Buch aus der Praxis für die Praxis. (*

kaufen...

Teil 1 - des Template-Workshops mit Smarty zeigt Ihnen was Smarty eigentlich ist und kann. Verschaffen Sie sich einen Überblick für eigene Projekte.

Was ist Smarty?

Smarty ist eine so genannte Template Engine auf Basis der Programmiersprache PHP (wikipedia.org). Mit Template-Engines trennen Sie das HTML-Gerüst vom Beitragsinhalt der Seiten ab. Sie entwickeln eine Webseitenvorlage in die alle Inhalte geladen werden. Viele bekannte CMS nutzen solche Template-Engines für den Aufbau der Webseiten. Smarty ist eine open Source Anwendung und kostenlos nutzbar. Sie können das Projekt von der Webseite smarty.net herunterladen und auf einem Webserver oder lokalen Server installieren.

Warum ist Smarty?

Keine Ahnung, es hätte auch jede andere Template-Engine wie Twig, Mustache, Plates, Blade oder oder oder sein können. Alle die genannten Template-Engines tun im wesentlichen immer das gleiche, sie laden ein Webseitentemplate in das sie den Beitragstext zur Laufzeit einfügen.

Smarty basiert auf Basis von PHP, während andere auf Sprachen wie JavaScript, Python oder sogar Ruby basieren - es ist also für jeden Sprachdialekt etwas dabei. Dennoch viel meine Wahl auf PHP, da dieser Sprachdialekt stärker verbreitet und auch deutlich typsicherer als JavaScript ist.

Wozu eine Template-Engine?

Auch wenn die händische HTML-Seiten-Entwicklung heutzutage kaum noch betrieben wird, dennoch ein Beispiel aus diesem Bereich. Stellen Sie sich vor, Sie schreiben eine Online-Dokumentation mit mehreren 1000 einzelner HTML-Seiten. Jede Seite hat einen Kopf in dem Überschriften sind, einen Inhaltsbereich der den Beitragstext aufnimmt und eine Fußzeile für Ihr Impressum und Datenschutz.

Ihre Online-Dokumentation soll jetzt noch den Namen des Autors unterhalb des Beitragstextes anzeigen, Sie brauchen also ein neues Feld in allen der über 1000 HTML Seiten. Haben Sie die Anwendung klassisch ausgeführt, müssten Sie daher alle Seiten einzeln modifizieren - das ist wirklich ein menge Arbeit.

Eine Template-Engine funktioniert anders. Es existiert nur eine HTML-Seite die Platzhalter enthält und Anweisungen mit denen sie erkennt welcher Inhalt in die betroffenen Platzhalter geladen werden soll. Beispielsweise gäbe es die Platzhalter {header}, {body} oder {footer}, dorthin werden wie im Beispiel beschrieben die betroffenen Inhalte zur Laufzeit geladen.

<html>
    <body>
        {header}
        {body}
        {footer}
    </body>
</html>

Das schematische Codeschnipsel oben soll den Inhalt eines solchen HTML-Templates symbolisieren, ohne dabei Anspruch auf Vollständigkeit zu erheben. Dieses Template mus nur einmal existieren, kann jedoch alle 1000 Inhalte Ihrer Onlinedokumentation anzeigen indem es den Text anstelle der Platzhalter läd.

Wollten Sie folglich noch den Autor mit anzeigen, dann reicht es aus ein weiteres Feld aufzunehmen. Nennen Sie es beispielsweise {autor}.

<html>
    <body>
        {header}
        {body}
        {autor}
        {footer}
    </body>
</html>

Das Feld Autor ist im Template unterhalb jedes Beitragstextes vorhanden und kann angezeigt werden. Natürlich können Sie auch ein Datum oder eine Kontakt-Mail auf diese Weise zu Ihrer Doku anreichern, es ist wirklich ganz einfach.

Anmerkung - Dieser Einstiegsbeitrag soll Ihnen eher einen schematischen Einstieg in die Template-Engines geben. Es geht nicht so sehr darum exakte Codeschnipsel zum nachprogrammieren zu erhalten, dies folgt in weiteren Beiträgen.


Tags: Workshop1
Datum: 30.11.2021
Autor: Oliver Lohse

Fortsetzung weiter lesen

Teil 5 Textconvert und Sonerzeichen

Konvertierung der Texte und ersetzen von speziellen HTML Characters in Unicode unter Nutzung so genannter Modifikatoren bzw. Modifier im Templateparser Smarty
Datum: 30.11.2021

Teil 6 Textbausteine erzeugen und lesen

Der Programmcode wird in diesem Beitrag vom Text getrennt und es werden reine eigenständige Textbausteile als Flatfile-DB erzeugt die das Template einliest.
Datum: 30.11.2021

Teil 3 ein einfaches Template anlegen

Legen Sie ein erstes sehr einfaches TPL Template für die Template-Engine Smarty an und lassen den Inhalt eines Artikels und Beitrags laden und rendern.
Datum: 30.11.2021

Teil 4 multi Content und Inhalte

Laden Sie mit der kostenlosen Template-Engine Smarty verschiedene Textbausteine aus einem Content Ordner und zeigen deren Inhalte auf der Webseite an.
Datum: 30.11.2021

Teil 2 installieren Sie Smarty

Nachdem Sie die kostenlose Template-Engine Smarty herunter geladen haben, installieren Sie die Programme auf den Webserver und beginnen mit dem Templating.
Datum: 30.11.2021


Weitere passende Artikel

_____

Nachdem Sie die kostenlose Template-Engine Smarty herunter geladen haben, installieren Sie die Programme auf den Webserver und beginnen mit dem Templating.
Legen Sie ein erstes sehr einfaches TPL Template für die Template-Engine Smarty an und lassen den Inhalt eines Artikels und Beitrags laden und rendern.
Laden Sie mit der kostenlosen Template-Engine Smarty verschiedene Textbausteine aus einem Content Ordner und zeigen deren Inhalte auf der Webseite an.
Der Programmcode wird in diesem Beitrag vom Text getrennt und es werden reine eigenständige Textbausteile als Flatfile-DB erzeugt die das Template einliest.

Teil 7 eigene Templateabfragen - Smarty Template Engine

Workshop1 • Template • Engine • Parser
Möchten Sie in Smarty Templates Bedingungen abfragen, dann können Sie den IF Befehl des Smarty Parsers nutzen, um die Ausgabe des Templates zu steuern.
WordPress Easy - Redaktion

About me

Mein Name ist Oliver Lohse. Ich bin diplomierter Wirtschafts-Informatiker und Organisations-Programmierer in verschiedenen Programmier-Sprachen und Markup-Dialekten, z.B. Java, JEE, COBOL, PHP, Python, MySQL, HTML, CSS, ANSI C, Lisp, Rexx, JavaScript, Scheme, ActionScript 2.0, Maschinensprache, Assembler und JCL. Seit mehr als 24 Jahren arbeite ich als Entwickler in einem großen Softwareunternehmen für Versicherungen in Hannover Niedersachsen und seit etwa 37 Jahren im EDV-Sektor mit wechselnden Aufgaben.