Da Welcompose zum Betrieb ohne FTP-Zugang konzipiert ist, müssen nebst den herkömmlichen Vorlagen für (X)HTML und XML auch alle anderen Dateien, die für eine Webseite benötigt werden, online verwaltet werden können.
Um Dateien mit textuellem Inhalt wie CSS oder JavaScript kümmern sich die Globalen Vorlagen. Wer Binärdateien wie Bilder oder Flash-Videos verwalten will, muss sich mit den Globalen Dateien beschäftigen (siehe Abschnitt 7.7, „Globale Dateien“).
Die Verwaltung der Globalen Vorlagen erfolgt im Bereich im Unterpunkt . Die Übersicht listet die vorhandenen Vorlagen zusammen mit einer allenfalls vorhandenen Beschreibung. Dazu werden eine Reihe von Funktionen zur Bearbeitung von Globalen Vorlagen geboten:
Ermöglicht das Hochladen einer Globalen Vorlage, wobei mit dem Dateiinhalt der hochgeladenen Datei die auf dem Server hinterlegte Vorlage ersetzt wird.
Erlaubt den Download der Globalen Vorlage als Datei.
Löscht die Globale Vorlage.
Um die jeweiligen Inhalte einer Globalen Vorlagen zu bearbeiten, klicken Sie bitte auf den Namen der Globalen Vorlage.
Sobald man auf den Link klickt, gelangt man zum Formular zum Hinzufügen einer neuen Globalen Vorlage.
Name der Globalen Vorlage, genauer gesagt ein Dateiname. Vorzugsweise der Name, unter dem man die Datei auch auf dem Desktop abspeichern würde.
(Optionaler) Beschreibungstext der Globalen Vorlage.
Inhalt der Globalen Vorlage, also der Code in der jeweiligen CSS-, XML- oder JavaScript-Datei.
Der MIME Type, den der Server senden soll, um die Datei gegenüber dem Browser zu identifizieren. Denn nur mit Hilfe des MIME Types kann der Browser erkennen, was er mit der jeweiligen Datei anfangen muss. Tabelle 7.2, „Liste der MIME-Typen“ zeigt, welcher MIME Type bei welcher Art von Inhalt respektive Datei zum Einsatz kommt.
Legt fest, ob Smarty für die Verarbeitung der
Vorlage einen anderen Delimiter verwenden soll.
Dies ist bei Dateien nötig, in denen viele
geschweifte Klammern ({
und }) vorkommen, da
sonst die Inhalte als Befehle interpretiert werden
können. Ist die Box angekreuzt, verwendet Smarty
als Delimiter <% und
%>, wodurch die
geschweiften Klammern nicht mehr interpretiert
werden. Für welchen Dateityp so ein
Delimiter-Wechsel sinnvoll sein dürfte, zeigt
Tabelle 7.2, „Liste der MIME-Typen“.
Ein Beispiel hält Abschnitt 7.6.3.1, „Beispiel: CSS-Dateien verwalten“
bereit.
Tabelle 7.2. Liste der MIME-Typen
| MIME Type | Geeignet für | Delimiter-Wechsel |
|---|---|---|
| text/css |
CSS-Dateien (*.css)
|
ja |
| text/html |
(X)HTML-Dateien (*.html,
*.htm usw.)
|
nein |
| text/javascript |
JavaScript-Dateien (*.js)
|
ja |
| text/plain |
Text-Dateien (*.txt) und
alle anderen Dateien mit textuellen Inhalten,
die zu keinem anderen MIME Type passen.
|
nein |
| text/xml |
XML-Dateien (*.xml)
|
nein |
Die Verwendung der Globalen Vorlagen soll anhand einer CSS-Datei illustriert werden, da dies auch ein gutes Beispiel ist, wo und wie eine Änderung des Delimiters notwendig ist.
Um die CSS-Datei als Globale Vorlage anzulegen, muss man zuerst zum Bereich und dort zum Unterpunkt wechseln. Sobald man dort auf den Link geklickt hat, kommt man zum Formular zum Anlegen einer Globalen Vorlage.
|
Anmerkung |
|---|---|
|
Für das Beispiel wird vorausgesetzt, das sie eine GIF Datei mit Namen container-bg.gif als Globale Datei (siehe Abschnitt 7.7, „Globale Dateien“) hochgeladen haben. |
Machen Sie nun die folgenden Eingaben, um das Beispiel nachzuvollziehen (nicht aufgeführte Felder können Sie ignorieren):
Geben Sie als Namen der Globalen Vorlage
beispiel.css ein.
Sie können auch einen anderen Namen verwenden,
müssen einfach bei den nächsten Schritten
beispiel.css jeweils
durch den von Ihnen gewählten Namen ersetzen.
Fügen Sie hier eine CSS Deklaration für unsere beispiel.css ein. Für das Beispiel reicht ein kurzer Code-Ausschnitt:
#container {
position: relative;
margin: 0 auto;
width: 993px;
background: #fff url(container-bg.gif) top right no-repeat;
text-align: left;
}
Wählen Sie hier aus.
Setzen Sie hier vorerst keinen Haken.
Ihre Globale Vorlage sollte nun so aussehen:
Wenn Sie die Vorlage jetzt speichern und die Datei direkt im Browser aufrufen
(passen Sie den Pfad zur
global_template.php entsprechend ihrem Installationpfad an.
Die global_template.php liegt immer im Root Ihrer Installation).
http://pfad/der/installation/global_template.php?name=beispiel.css
wird ihnen, abhängig vom der Konfiguration des Loggins (siehe Abschnitt 13.1.2.2, „Direkte Ausgabe“) ein Fehler angezeigt oder sie erhalten eine weiße, leere Seite.
Dieser Fehler wird dadurch verursacht, dass Smarty die geschweiften Klammern, die zur CSS-Syntax gehören, als Befehle interpretiert und auszuführen versucht.
Um diesen Fehler zu beheben/verhindern, setzt man bei einen Haken. Sobald man dies tut und die Datei wieder im Browser lädt, sollte der CSS-Code ganz ohne Modifikationen angezeigt werden, wie er eingegeben wurde.
Würde man nun die CSS-Datei in eine HTML-Seite einbetten, würde das Hintergrund-Bild allerdings nicht angezeigt werden, da wir zuvor noch den Pfad zur Datei einfügen müssen.
Entfernen Sie nun den Verweis zur
container-bg.gif aus der Globalen
Vorlage und lassen Sie den Cursor dort stehen, wo der
Bildname war. Klicken Sie nun über der Textarea, in der der
CSS-Code steht, auf und wählen dort
die oben angesprochene container-bg.gif Datei aus.
Datei aus.
Anstelle des einfachen Dateinamens steht nun in der Vorlage ein Smarty-Befehl, der beim Aufbereiten der CSS-Datei den Platzhalter durch den effektiven Dateinamen zur Globalen Datei und damit dem Hintergrundbild ersetzt:
#container {
position: relative;
margin: 0 auto;
width: 993px;
background: #fff url(<%global_file name="container-bg.gif"%>) top right no-repeat;
text-align: left;
}
Speichern Sie nun die Globale Vorlage und rufen Sie sie wieder wie zuvor im Browser direkt auf, sollten Sie statt den Smarty-Befehl nun den korrekten Pfad zur Globalen Datei sehen.
Würden Sie nun die CSS-Datei in eine HTML-Datei einbinden, würde das Bild korrekt erscheinen. Wie das Referenzieren der Globalen Vorlage in einer Vorlage funktioniert, erklärt Abschnitt 7.6.3.2, „Globale Vorlagen referenzieren“.
|
Anmerkung |
|---|---|
|
Diese Ersetzung der Bilder durch Globale Dateien müssen Sie für alle Bilder vornehmen, die Sie in einer CSS-Datei verwenden. Löschen Sie dazu einfach die alten Bildreferenzen und ersetzen Sie mit Hilfe der Auswahl der Globalen Dateien über das Pop-up, wie es im Rahmen des Beispiels vorgeführt wurde. |
Globale Vorlagen können sowohl in anderen Globalen Vorlagen als auch in normalen Vorlagen referenziert werden. Die Referenzen werden in Form einer Smarty-Funktion eingesetzt, welche bei der Verarbeitung der Seite durch den realen Pfad zur Globalen Vorlage ersetzt wird. So wird aus
{global_template name="beispiel.css"}
beispielsweise der Pfad
/pfad/der/installation/global_template.php?name=beispiel.css
Die Globalen Vorlagen können damit zum Beispiel in @import-Anweisungen in CSS-Dateien oder als src- oder href-Attribut in verschiedenen HTML-Tags verwendet werden. Beispiel:
<link rel="stylesheet" href="{global_template name="beispiel.css"}"
type="text/css" media="screen, projection" />
wird zu
<link rel="stylesheet" href="/pfad/der/installation/global_template.php?name=beispiel.css" type="text/css" media="screen, projection" />
Die Smarty-Funktion zur Einbindung der Globalen Vorlagen muss man nicht selber schreiben, sondern kann man sie von einer Hilfsfunktion einsetzen lassen, die jeweils über den Eingabefeldern für die Vorlagen-Inhalte lokalisiert sind. Über ein Pop-up lässt sich die gewünschte Globale Vorlage auswählen. Die Smarty-Funktion zur Einbindung der Globalen Vorlage generiert die adäquate Syntax und setzt diese an der Stelle des zuvor gesetzten Cursors ein.