Logo

Teil 5 Textconvert und Sonerzeichen mit dem Smarty Template Parser


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

Magnetisches Smart Watch Schnellladegerät

Magnetisches Smart Watch Schnellladegerät - ⚡ Multifunktionales 2 in 1 Schnellladegerät ⚡ Dank seines kompakten Designs ist es kompatibel mit iWatch 7, 6, 5, 4, 3, 2, 1 einschließlich 38mm 40mm 42mm 44mm Version und kompatibel mit iPhone 13, 12, 11, Max, XR, XS, X, 7, 8 und iPad Serie ⚡ Das 2 in 1 Ladekabel kann Ihre Smartwatch und Ihr Telefon gleichzeitig aufladen. Hinweis

kaufen...
Automad Bludit Coast GetSimple GRAV Handlebars Java PHP Pico Smarty Templating Typemill WonderCMS WordPress yamlCMS

Teil 5 - Deutsche Sonderzeichen wie ü und ä müssen zwingend in HTML konforme Zeichen umgewandelt werden. Die Smarty Modifier erlauben solche manipulationen im Template.

Deutsche Texte die Sonderzeichen wie "öäü" enthalten, können mit der Template Engine Smarty und dem Templatepattern dieser Beitragsreihe noch nicht automatisch konvertiert werden, damit Sie dies nicht ständig beim schreiben des Beitrags von Hand erledigen müssen, sollte Sie das folgende Coding in Ihre index.php übernehmen.

index.php

Fügen Sie in die Datei index.php eine neue Funktion ein (übrigens, sehen Sie mir bitte nach wenn ich diese immer als Methoden bezeichne, denn nichts anderes sind Funktionen, es sind Methoden!):

01  <?php
02    require_once('libs/Smarty.class.php');
03    $smarty = new Smarty();
04  
05    function remove_special_chars ($text) {
06      $specialChars   = array("ö",     "ä",     "ü",     "Ö",     "Ä",     "Ü",     "ß");
07      $specialReplace = array("ö","ä","ü","Ö","Ä","Ü","ß");
08      $text = str_replace($specialChars, $specialReplace, $text);
09      return $text;
10    }
11  ...
12  ... <- den Rest des Codes kennen Sie aus dem vorherigen Artikel

Diese neue Funktion nimmt einen String entgegen und wandelt alle speziellen Zeichen aus dem ARRAY $specialChars in die korrespondierenden Zeichen des Arrays $specialReplace um.

artikel.tpl

Damit die Template Engine Smarty die neue Methode nutzt, muss diese im Artikel-Template mit angegeben werden. editieren Sie die artikel.tpl im Ordner templates und stellen Sie jeder Template-Variable mittels Pipe "|" die neue Methode nach, dies nennt sich Modifikator.

...  ...
021  <body>
...  ...
029  <div class="jumbotron">
030    <h1 class="display-4">{$titel_tmpl|remove_special_chars}</h1>
031    <hr class="my-4">
032    <p class="lead">{$anleser_tmpl|remove_special_chars}</p>
033  </div>
...
050  </body>
051  </html>

Smarty ruft beim interpretieren des Templates die neue Methode auf und übergibt ihr automatisch den Inhalt des Platzhalters. Die Syntax:

{$anleser_tmpl|remove_special_chars}

ruft folglich die neue Methode (function) remove_special_chars() in der Datei index.php auf und übergibt ihr den Inhalt aus der Variablen $anleser_tmpl. Die Methode liefert den bereinigten String ohne "öüä" mit ö ü und ä an ihren Aufrufer zurück.

Anmerkung - Durch eigene "functions" (Methoden) können Sie Ihrem Template mehr Intelligenz verleihen und machen es leistungsfähiger. Neue "functions" können Sie mit Pipe | anfügen, Sie können sogar weitere "functions" mit dem Pipe-Operator anhängen {$anleser_tmpl|function_a|function_b|function_c}, Smarty wird sie alle abarbeiten.

Passend:


Die Funktion remove HTML Tags im Bludit CMS entfernen

Das entfernen von HTML-Eingaben in SingleUser Blogs kann hinderlich sein, da sie die Kreativität etwas drosseln, entfernen Sie diese Funktionen ganz einfach

Den Sanitizer des Bludit CMS leicht selbst deaktivieren

In individuellen CMS Anpassungen kann der Sanitizer etwas hinderlich sein, da er viele HTML-Formate entfernt. Deaktivieren Sie die Funktion in SingleUser Blogs.

Mit einem HTML-Template beginnen - Templating Tipps

Erarbeiten Sie als Prototypen ein reines HTML-Template das Ihnen zusagt. HTML-Templates sind schneller entwickelt und müssen weniger Restriktionen einhalten.

Die richtige Wahl der Templatesprache Templating Tipps

In welcher Schreibweise sollten Sie CMS Templates erstellen? Gemischt HTML und PHP oder doch lieber waschechtes PHP? Dieser Beitrag erleichtert den Einstieg.

CSS Formatfehler PRE Tag in Automad CMS selbst beheben

Das CMS Automad formatiert den PRE-Tag in dieser Version falsch. Korrigieren Sie dies mit wenigen CSS-Statements, um formatieten Text nutzen zu können.

Schlagworte mit CSS Styles im Automad CMS umbrechen lassen

Korrigieren Sie den defekten CSS Style im populären CMS Automad mit wenigen Codezeilen, um beliebte Schlagwörter und Tags korrekt anzeigen zu können.

Schlagwörter im Theme BlogX des Bludit CMS anzeigen

Schlagwörter und Tags sind hilfreich und beliebt. Dieser Beitrag zeigt Ihnen, wie Sie diese in den beiden Templates BlogX und Alternative einschalten.

Untergeordnete Posts im Template des Bludit CMS anzeigen

Die Funktion Beiträgen einen Leitartikel zu geben, gibt es schon sehr lange in Bludit, jedoch war die Anzeige im Theme "Alternative" nicht möglich.

Verwandte Beiträge 2 in Bludit CMS anzeigen lassen

Teil 2 - dieser Beitrag zeigt Ihnen das vollständige Coding, wie das CMS Bludit anhand von Tags verwandte Beiträge anlisten kann und als Vorschläge anzeigt.


Meta: Instagram CMSWorkbench.de GIMP-Handbuch.de Kontakt Impressum Datenschutz