Zeichensatzprobleme bei einigen Themes

  • Ein erstes Hallo in die Runde.

    Ich bereite meinen privaten Blog vor und arbeite mich derzeit in Wordpress ein. Die Anpassung von Themes im Theme-Editor klappt mit hilfe von Büchern und Foren-Suche auch schon ganz gut.

    An folgendem Punkt komme ich jedoch nicht weiter:

    Das derzeit ausgewählte Theme läuft mit der Darstellung aller deutschen Umlaute einwandfrei. Wähle ich jedoch z. T. andere Themes aus (z. B. das neue von Perun), die mir besser gefallen, werden hier z. T. die deutschen Umlaute durch falsche Zeichen dargestellt. Ich habe aus diversen Postings herausgelesen, dass dies mit der Zeichensatz-Codierung zusammenhängt und auch schon einiges probiert; ohne Erfolg.

    Eingestellt ist im Admin-Bereich von Wordpress 2.5.1 (Zeichensatz für Seiten und FeedS) der Zeichnsatz UTF-8, wie hier auch empfohlen. Die Umlaute in den Beiträgen werden auch einwandfrei dargestellt. In den Menüs und der Sidebar tritt aber der Darstellungsfehler auf. Ändere ich die Einstellung in Wordpress auf ISO-8859, wie hier auch irgendwo gelesen, werden dann Menü und Sidebar richtig dargestellt, jedoch die Beiträge nicht. Das Problem tritt auf unterschiedlichen Rechnern auf, wowohl bei IE 7.X als auch bei Firefox. Ich verzweifele hier fast :confused:

    Hier der Link. Habe allerdings derzeit das einwandfreie Theme mit der korrekten Darstellung geschaltet, damit die Ansicht nicht verschandelt wird.

    Weiss jemand Rat?

    Vielen Dank vorab,
    Rashid

    - wordpress 2.5.1
    - PHP 4.4.7
    - MySQL 4.1.22

    WordPress 2.5.1, PHP 4.4.7, MySQL 4.1.22

    Einmal editiert, zuletzt von web-shadow (2. Mai 2008 um 09:40)

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Die Einstellung in WordPress muss zu Deiner Datenbank passen. Das kannst Du nicht nach Belieben umstellen, sonst werden natürlich die Beiträge falsch ausgelesen und ggf. auch falsch gespeichert (neue Beiträge). Mit UTF-8 fährst Du da immer am besten.

    Wenn Du UTF-8 verwendest, muss natürlich auch das Theme UTF-8 unterstützen, das heißt alle PHP-Dateien des Themes, in denen fest irgendwelche Texte für die Sidebar etc. stehen, müssen auch als UTF-8-Datei (ohne BOM) gespeichert werden. Das könntest Du mit einem guten Texteditor einfach selber konvertieren oder Du fragst mal beim Theme-Autor nach. Oder Du ersetzt die Umlaute einfach durch HTML-Entities.

  • Wenn Du UTF-8 verwendest, muss natürlich auch das Theme UTF-8 unterstützen, das heißt alle PHP-Dateien des Themes, in denen fest irgendwelche Texte für die Sidebar etc. stehen, müssen auch als UTF-8-Datei (ohne BOM) gespeichert werden. Das könntest Du mit einem guten Texteditor einfach selber konvertieren

    hast du einen vorschlag für einen editor bzw. weisst du welche einstellungen man in homesite machen muss?

  • Homesite kenne ich nicht, ich selber nutze UltraEdit (kostenpflichtig, aber wirklich nicht zu schlagen als Allround-Editor). Da würde man die Datei öffnen, dann Datei > Konvertieren > ASCII nach Unicode/UTF-8-Bearbeitung und dann Datei > Speichern unter > UTF-8 ohne BOM. In anderen Editoren müsste das ja ähnlich funktionieren. Einfach mal einen Umlaut zur Kontrolle raussuchen, die Datei (wenn nötig) konvertieren und dann als "UTF-8 ohne BOM" speichern.

    Am einfachsten müsste es im Prinzip aber sein, die Umlaute einfach durch Entities zu ersetzen. Sind ja in aller Regel nur sieben Stück:
    ä => ä
    Ä => Ä
    ö => ö
    Ö => Ö
    ü => ü
    Ü => Ü
    ß => ß

    Wie sich das verhält, wenn die Texte aus der deutschen Sprachdatei kommen, bin ich mir im Moment übrigens nicht sicher. In dem Fall stimmt die Codierung hoffentlich immer, da die Texte dann ja per PHP eingefügt werden.

  • mal zur doku für andere die evt. auch homesite nutzen

    so kann man es bei homesite einrichten:

    • Options / Settings / File Settings / Format when saving -> Unix (habe ich mal auf Verdacht so eingestellt)
    • Options / Settings / File Settings / Enable Non-ANSI file-encoding
    • Bei bestehenden Dateien File / Save as / Encoding
  • Wenn Du UTF-8 verwendest, muss natürlich auch das Theme UTF-8 unterstützen, das heißt alle PHP-Dateien des Themes, in denen fest irgendwelche Texte für die Sidebar etc. stehen, müssen auch als UTF-8-Datei (ohne BOM) gespeichert werden.

    Ammaletu: Vielen Dank für die Erklärung; das war der richtige Hinweis :-D

    Ich habe mir anstelle des windowseigenen Notepads den Freeware-Editor "Notepad2" von Florian Balmer heruntergeladen und damit die sidebar.php geöffnet. Dann im Menü File -> Encoding auf UTF-8 eingestellt und Datei wieder gespeichert. Nach erneutem Hochladen der neu gespeicherten PHP-Datei auf den FTP funktioniert es nun einwandfrei!

    Fazit: Wenn die Umlaute in den Beiträgen (=Datenbankinhalte) korrekt dargestellt werden, jedoch Menüs o. ä. nicht, ist das ein Hinweis darauf, dass der Fehler nicht an den Einstellungen der Datenbank oder in Wordpress liegt, sondern an der Codierung der PHP-Datei(en) des Themes.

    Danke für alle Antworten!!

    WordPress 2.5.1, PHP 4.4.7, MySQL 4.1.22

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!