Seite 1 von 1

Umlaute werden nicht mehr angenommen

Verfasst: Do 9. Okt 2014, 09:26
von Romplayer
Hallo liebes Forum,

ich habe die Verwaltung des Contenido Systems (Version 4.8.12) meiner Firma übernommen und habe gerade ein Problem, das ich mir nicht erklären kann.
Auf der Startseite werden auf einmal keine Texte mehr angezeigt, die Stellen wo sie auftauchen sollten bleiben leer. Dieser Fehler ist mir gestern aufgefallen, vor einem Monat war er definitiv noch nicht da. Allerdings habe ich in der Zwischenzeit eigentlich nichts an der generellen Struktur der Seite geändert, ich verstehe also nicht, wieso das Problem nun auf einmal auftritt.

Jedenfalls habe ich mir die Struktur der Startseite angesehen und festgestellt, dass die fehlenden Texte eigentlich immer noch in Contenido gespeichert sind. Sprich: Es existieren zwei eingebundene Textfelder, wenn ich diese editieren möchte, sieht man dass sie den korrekten Text immer noch enthalten - nur auf der gerenderten Seite werden sie nicht geladen.
Diese Textfelder sind ein Modul mit folgendem Code:

Code: Alles auswählen

if (!isset($tpl) || !is_object($tpl)) {
    $tpl = new Template();
}

$tpl->reset();
$tpl->set('s', 'text', "CMS_TEXT[10]");
$tpl->generate('templates/text_html.html');
?>
Wie gesagt, an den Modulen habe ich eigentlich nie etwas geändert, dieser Code hat früher also einwandfrei funktioniert, nun aber nicht mehr.
Das Problem des fehlenden Textes konnte ich näher eingrenzen, er hat etwas mit Umlauten zu tun. Ersetze ich den Text also durch einen, der keine Umlaute enthält, wird er problemlos auf der Startseite angezeigt. Aber auch hier gilt: Am Text hatte ich nie etwas geändert, auch früher schon hat er Umlaute enthalten und wurde trotzdem angezeigt.

Könnt ihr mir bei diesem Problem weiterhelfen?
Einerseits stellt sich mir die Frage, warum die Umlaute nun auf einmal ein Problem bereiten. Bin mir nicht sicher, ob ihr mir darauf überhaupt eine Antwort geben könnt.
Die andere wäre: Wie behebe ich das Problem? Kann ich z.B. am Modul-Code etwas ändern, damit er Umlaute wieder anzeigt?

Sämtliche anderen Textfelder auf der Homepage werden übrigens (nach wie vor trotz Umlauten problemlos) mit Modulen erzeugt, die lediglich folgenden Code haben:

Code: Alles auswählen

<?php
echo "CMS_HTML[1]";
?>
Keine Ahnung, wieso die Startseite das andere Modul nutzt. Vielleicht habt ihr auch da eine Idee.

Re: Umlaute werden nicht mehr angenommen

Verfasst: Fr 10. Okt 2014, 17:22
von Zuschauer
Hallo Romplayer,

die Module mit CMS_TEXT speichern den eingegebenen Text ohne Änderungen, die CMS_HTML hingegen wandeln Umlaute und Sonderzeichen in ihre HTML-Codes um.
Generell sollte man die CMS_TEXT vermeiden und immer CMS_HTML einsetzen.
Um dein Problem jetzt aber schnell zu umgehen, kannst du in Notepad++ (notepad-plus-plus.org, kostenlos) die Texte umwandeln (Erweiterungen - HTML Tag - Encode entities) und dann wieder einsetzen.

Gruß
Zuschauer

Re: Umlaute werden nicht mehr angenommen

Verfasst: Mo 20. Okt 2014, 11:11
von Romplayer
Hallo Zuschauer!

Danke für deine Nachricht.
Wir haben festgestellt, dass unser Problem mit einer serverseitigen Umstellung von PHP5.2 auf PHP5.4 zu tun hatte.
Durch ein Update von Contenido auf 4.8.20 haben wir es aber geschafft, dass unsere Texte im Frontend wieder auftauchen, selbst wenn wir PHP5.4 nutzen.

So weit so gut. Interessanterweise hat allerdings der ADMINBEREICH von Contenido selbst immer noch Probleme!
Nimmt man zum Beispiel diesen Screenshot aus der offiziellen Anleitung:

Bild
Der in der unteren Zeile weiß hinterlegte Reiter enthält den Text "Überblick" - also mit Umlaut. Bei unserer Installation ist der Reiter jetzt einfach leer. Man kann ihn nach wie vor anklicken, aber er zeigt halt das Wort "Überblick" nicht mehr an.

Ich weiß nicht, ob ähnliche Probleme noch an anderen Stellen auftreten. Aber an unseren CMS_TEXT Modulen dürfte das definitiv nicht mehr liegen ;)
Sogar das Contenido-Backend zeigt also solche Bugs :-/

Re: Umlaute werden nicht mehr angenommen

Verfasst: Di 21. Okt 2014, 11:42
von Oldperl
Hallo,
Romplayer hat geschrieben:Interessanterweise hat allerdings der ADMINBEREICH von Contenido selbst immer noch Probleme!
Das liegt am fehlerhaften bzw. falschen Encoding. Die Inhalte/Texte der Tabs kommen aus den xml-Dateien in contenido/xml. Du kannst dort einmal versuchen zu Beginn der Datei für Deutsch das Encoding auf 'utf-8' zu setzen.

Gruß aus Franken

Ortwin

Re: Umlaute werden nicht mehr angenommen

Verfasst: Mi 5. Nov 2014, 14:43
von Romplayer
Hallo Ortwin!

Danke für deine Nachricht. Habe deinen Tipp mal ausprobiert und die Datei lang_de_DE.xml angepasst, leider hat das die Situation nur verschlimmert. Jetzt wird bei jedem Reiter (auch bei denen, die vorher in Ordnung waren) statt dem eigentlichen Text ein Fehlermeldungs-Text angezeigt. Zum Beispiel "Not found: navigation/mycontenido/overview".
Andere Vorschläge zum Beheben von meinem Problem?

Re: Umlaute werden nicht mehr angenommen

Verfasst: Mi 5. Nov 2014, 15:15
von Oldperl
Also wenn Contenido nun die Einträge nicht findet dann ist da etwas bei der Bearbeitung der xml-Datei schief gelaufen. Vermutlich wurde die xml-Struktur verändert/zerstört, so dass der xml-Parser die Datei nicht korrekt einlesen kann. Am Besten die originalen xml-Datei aus dem original Contenido-zip nehmen und die geänderten ersetzen.
Änderst du NUR den Encoding-Eintrag der Dateien sollte es eigentlich korrekt funktionieren.

Gruß aus Franken

Ortwin

Re: Umlaute werden nicht mehr angenommen

Verfasst: Mi 5. Nov 2014, 16:41
von Romplayer
Hallo Ortwin!

Vor der Änderung sah der Beginn der Datei folgendermaßen aus:

Code: Alles auswählen

<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Contenido XML language file -->
<language>
...
Nach der Änderung so:

Code: Alles auswählen

<?xml version="1.0" encoding="utf-8"?>
<!-- Contenido XML language file -->
<language>
...
Ich kann da keinen Fehler sehen. Wird der Text wieder zu ISO-8859-1 geändert, verschwinden die Fehlermeldungen wieder. Die Struktur von der Datei an sich scheint also nicht zerstört worden zu sein. Die Datei wurde mit Notepad++ bearbeitet.

Re: Umlaute werden nicht mehr angenommen

Verfasst: Do 6. Nov 2014, 05:35
von Oldperl
Hi,

eventuell groß schreiben bzw. ganz weg lassen. Weitere Infos zu xml-Dateien findest du auch im SELFHTML-Wiki :arrow: http://de.selfhtml.org/xml/regeln/xmlde ... atzangaben
Du kannst auch nochmal das Encoding der Datei selbst checken, ich nutze für so etwas PSPad. Ob das Notepad++ auch kann weiß ich daher nicht. In PSPad kann man im Menü "Format" sowohl das Datei-Encoding als auch die Zeilenendzeichen entsprechend den eigenen Wünschen umstellen.

Gruß aus Franken

Ortwin

Re: Umlaute werden nicht mehr angenommen

Verfasst: Do 6. Nov 2014, 08:48
von Zuschauer
Moin,

in Notepad++:
- Bearbeiten - Format Zeilenende - Konvertiere zu UNIX (LF)
- Kodierung - Konvertiere zu UTF-8 ohne BOM

Gruß
Zuschauer

Re: Umlaute werden nicht mehr angenommen

Verfasst: Do 6. Nov 2014, 15:38
von Romplayer
Weder Großschreibung noch Format der Datei selbst haben etwas geändert. Viele der Menüpunkte zeigen nach wie vor eine Fehlermeldung statt dem eigentlichen Text. Interessanterweise aber nicht alle davon: Ist bspw der Hauptpunkt "Content" aktiv (der als einziger der Hauptpunkte seinen Namen behält), kann ich im Submenü darunter den ersten Menüpunkt als "Artikel" und den letzten Menüpunkt als "Linkchecker" sehen, die beiden dazwischen zeigen aber eine "Not found: ..." Meldung an wie oben beschrieben.

Re: Umlaute werden nicht mehr angenommen

Verfasst: Di 11. Nov 2014, 11:33
von Oldperl
Hallo,

kann man sich das mal irgendwo anschauen? Denn so ohne einen Blick darauf fällt mir gerade nichts mehr dazu ein.

Gruß aus Franken

Ortwin

Re: Umlaute werden nicht mehr angenommen

Verfasst: Di 11. Nov 2014, 11:38
von Romplayer
Worauf genau willst du denn schauen? Ich denke nicht, dass ich einen Zugang zu unserem Contenido System einrichten kann bzw darf, geschweige denn auf FTP.

Re: Umlaute werden nicht mehr angenommen

Verfasst: Di 11. Nov 2014, 11:47
von Oldperl
Hi,

nun, dann denke ich nicht das ich Dir da so weiter helfen kann. :roll:
Tut mir Leid.

Gruß aus Franken

Ortwin