Einsatz von Platzhaltern für Textfelder

Nutzbar ab: Version

Dieser Artikel beschreibt, wie Sie Platzhalter für WYSIWYG-Felder einsetzen, die in der Ausgabe durch entsprechende Werte ersetzt werden.

Ab der Version 005.067.013.000 können Sie den Redakteuren in der Bearbeitung eine Auswahl an Platzhalter bereitstellen, die beim Aufruf der Seite durch entsprechende Werte ersetzt wird. Dies kennen Sie z.B. von den Newsletter Platzhaltern, die eine persönliche Anrede, etc. beim Newsletterversand ermöglichen.

Nachfolgend ein Auszug von Einsatzmöglichkeiten von Platzhalter:

  • Ausgabe der aktuellen Uhrzeit bzw. Datum (siehe Beispiel unten)
  • Ausgabe von Bildern (Platzhalter [!--IMG.download--] wird z.B. durch ein IMG-Tag ersetzt)
  • Ausgabe von häufig genutzten Links (z.B. Startseite, ...)
  • etc.

Das folgende Beispiel zeigt Ihnen die Umsetzung zur Ausgabe der aktuellen Uhrzeit.
Die Platzhalterdatei definiert die zur Auswahl stehenden Platzhalter und deren Benennung. Der Wert des value-Attributes steht für den Namen des Platzhalters (z.B.: value="currentTime" definiert den Platzhalter [!--currentTime--] ). Das name-Attribut definiert die sprachabhängige Benennung des Platzhalters für die Auswahlbox in der WYSIWYG-Leiste. Z.B.: de:name="Aktuelle Uhrzeit" gibt einem Redakteur mit deutscher Benutzersprache in der Auswahlbox den Text "Aktuelle Uhrzeit" aus (siehe Beispiel unten).
Standardmässig werden die Platzhaltertexte mit eckigen Klammern umschlossen ([!--PLATZHALTERTEXT--]). Über das Attribut placeholder können Sie alternativ auch ohne umschließende eckige Klammern die Platzhalter einfügen (siehe Beispiel unten).

Beispiel: Inhalt der Platzhalterdatei /wGlobalProject/wGlobal/layout/editor/wysiwyg/placeholdersToInsert.wEditorStyles.php

<?php $version="1.0"; $encoding="UTF-8"; ?>
<?php exit; ?>
<wEditorStyles xmlns:de="http://weblication.de/5.0/lang/de" xmlns:en="http://weblication.de/5.0/lang/en" xmlns:fr="http://weblication.de/5.0/lang/fr" xmlns:wsl="http://weblication.de/5.0/wsl" version="5.0">
  <placeholderToInsert de:name="Aktuelle Uhrzeit" en:name="Current Time" value="currentTime"/>
  <placeholderToInsert de:name="Weblication® CMS" en:name="Weblication® CMS" value="weblication-cms-reg" placeholder="###weblication-cms-reg###" />
</wEditorStyles>

Ein Redakteur nutzt die Platzhalter, indem er an der gewünschten Stelle des Textfeldes (WYSIWYG) den Cursor setzt und danach den gewünschten Platzhalter über die Auswahlbox auswählt. Somit wird der Platzhalter im Text gesetzt.

Dateibearbeitung zur WYSIWYG-Leiste mit Auswahlbox für Platzhalter

Nachdem die Seite gespeichert wurde, kann der entsprechende Platzhalter während der Transformation der Seite durch einen entsprechenden Wert ersetzt werden. Dies steuern Sie über die globale pre.php Ihres Projektes.

Beispiel: Auszug aus der Pre-Datei /wGlobalProject/wGlobal/scripts/pre.php zu Platzhaltern

// ...
// Das Umschreiben des Platzhalters definieren Sie in der pre.php
// bevor die Seite ausgegeben wird:
$preResult = preg_replace("/\[!--currentTime--]/", date('H:m').' Uhr', $preResult);
// ...
// Hier wird die Seite ausgegeben
print $preResult;
// ...