Nutzerdefinierte Tags

string(128) "Smarty error: [in content:content_en line 12]: syntax error: unrecognized tag 'user_agent' (Smarty_Compiler.class.php, line 590)"

... sind eine der unbekannteren Fähigkeiten von CMS/made simple.

Dies sind kleine PHP-Codeschnipsel, die in der Administration über "Erweiterungen > Benutzerdefinierte Tags" erstellt und unter einem von Ihnen gewählten Namen in der Datenbank gespeichert werden. Anschließend können diese als Tag mit

{Name_des_Plugins}

in Ihre Templates oder Seite eingefügt werden.

In der CMS/ms-Musterinstallation wird ein Beispiel-Tag namens

{user_agent}

mitgeliefert, welches Informationen über Ihren aktuellen UserAgent (der Browser, den Sie gerade verwenden) ausgibt:

//Code to show the user's user agent information.
echo $_SERVER["HTTP_USER_AGENT"];

Die einleitenden und abschließenden PHP-Tags

<?php ... ?>

werden nicht benötigt. Das Ergebnis des obigen benutzerdefinierten Tags sehen Sie hier:

.

Richtig eingesetzt ist dies ein mächtiges Feature. Benutzerdefinierte Tags werden außerdem nicht zwischengespeichert, so dass Scripte zur Bannerrotation und ähnliches problemlos funktionieren.

Hinweis 1: Wenn der Name eines benutzerdefinierten Tags aus mehreren Wörtern besteht und diese miteinander verbunden werden sollen, dann muss zwingend der Unterstrich (nicht der Bindestrich/Minus) verwendet werden. Ansonsten wird ein Smarty-Fehler ausgegeben.

Falsch:

{mein-tag}

Richtig:

{mein_tag}

Weitere Informationen dazu finden Sie im Smarty-Handbuch unter http://smarty.net/manual/de/plugins.naming.conventions.php

Hinweis 2: Die eben dargestellten Namenskonventionen gelten auch für die Namen von Smarty-Variablen, hier gezeigt an einer Zuweisung:

Falsch:

{assign var=first-letter value='$entry->company_name'}

Richtig:

{assign var=first_letter value='$entry->company_name'}

Impressum  ·  Datenschutz  ·  Kontakt  ·  Spenden  ·  Inhaltsverzeichnis

© Copyright 2006-2024 by Andreas Just