WordPress von iso-8859-1 auf UTF8 umstellen
Wenn man z.B. Microsofts Live Writer zum Verfassen von Blogeinträgen nutzen möchte, der Weblog und die Datenbank jedoch auf Charactersets wie iso-8859-1 oder latin1 eingestellt sind, gibt es Probleme, da Live Writer grundsätzlich per UTF8 überträgt und damit alle Umlaute etc. zerschossen werden.
Dieses Problem kann jedoch auch bei anderen Anwendungen auftreten, wie ich feststellen musste und darum hier eine kleine Anleitung, wie man eine Datenbank samt Inhalten zu UTF8 konvertiert, sofern man einen Shellzugriff (z.B. per SSH) auf den Server hat:
- Vorhandene Datenbank per Dump sichern:
mysqldump –opt -u BENUTZERNAME -p DATENBANKNAME > blog.sql - Dump-File nach UTF8 konvertieren (je nach vorherigem Characterset der Datenbank hier z.B. iso-8859-1 oder latin1 eingeben)
iconv -f iso-8859-1 -t utf8 blog.sql > blog_utf8.sql - Konvertiertes Dump-File wieder in die Datenbank importieren
mysql -u BENUTZERNAME -p DATENBANKNAME < blog_utf8.sql - In WordPress unter „Einstellungen“ -> „lesen“ den Zeichensatz auf utf-8 umstellen und speichern
Jetzt sollten alle Sonderzeichen wieder korrekt dargestellt werden und auch Live Writer funktioniert, wie er soll. Grundsätzlich sollte man bei einer Neuinstallation von WordPress darauf achten, dass die Datenbank gleich mit UTF8 angelegt wird, da dies auch der empfohlene Zeichensatz ist.
Solltet ihr keinen Zugriff auf die Shell haben, wäre das hier von M.Tacker.org noch eine interessante Alternative: convert-encoding.php
Nützliche Tipps zu Livewriter und WordPress gibt es übrigens hier: http://www.live-writer.de/
Die mit Sternchen (*) gekennzeichneten Verweise sind sogenannte Provision-Links. Wenn du auf so einen Verweislink klickst und über diesen Link einkaufst, bekomme ich von deinem Einkauf eine Provision. Für dich verändert sich der Preis nicht und du unterstützt damit meine Arbeit. Preisänderungen und Irrtümer vorbehalten.