Search the FirstSpirit Knowledge Base
Hallo *,
wird bei einem Medium (File) kein Encoding angegeben, produziert die Generierung folgende Warning:
WARN [...] (de.espirit.firstspirit.generate.SiteProduction): no encoding provided for media [Referenzname] (id=123, lang=DE) - assume UTF-8
Aktuell sind das in unserem Migrationsprojekt über 350 Files / Warnings. Gibt es eine Möglichkeit, das Encoding per Skript einmalig auf UTF-8 zu setzen? Da der Rückfallwert UTF-8 ist, sollte dies keine Probleme für die Files darstellen. Oder gibt es eine Möglichkeit bei der Linkgenerierung im Template diesen Fehler abzufangen?
Viele Grüße,
C. Klingbeil
FS 4.2.462.49171
Guter Hinweis 🙂 Damit geht's:
$CMS_INCLUDE(media:st_snippet,encoding:"UTF-8")$
Die Meldung kommt, wenn der Inhalt der Datei in der generierten Seite inkludiert wird. Mit der Linkgenerierung sollte die Meldung also nichts zu tun haben.
Wenn die Dateien z.B. Umlaute enthalten wäre es sicherer, vorher noch mal zu kontrollieren, ob sie wirklich in UTF-8 gespeichert sind.
Das Encoding kann problemlos per Skript gesetzt werden, über die Methode File.setEncoding(String).
Guter Hinweis 🙂 Damit geht's:
$CMS_INCLUDE(media:st_snippet,encoding:"UTF-8")$
Aber nur solange, bis jemand ein "snippte" mit anderem Encoding einstellt
Sicherer ist es so (Achtung: Pseudo-Code, ungetestet):
$CMS_SET(encoding, st_snippet.get.file(#global.language))$
$CMS_INCLUDE(st_snippet, encoding:if(encoding != null, encoding, "UTF-8"))$