Wenn Sie den Webhost gewechselt haben oder die Datenbank für Ihren WordPress-Blog geändert haben, tritt möglicherweise ein Problem auf, wenn fremde Zeichen auf Ihrer Site nicht korrekt angezeigt werden. Anstelle der fremden Zeichen finden Sie an ihrer Stelle viele Fragezeichen (???). In diesem Artikel zeigen wir Ihnen, wie Sie dieses Problem beheben und die richtige Sprache anzeigen können, ohne Daten zu verlieren.

Was ist Zeichenkodierung?

Bevor wir uns den Ursachen und Lösungen für dieses Problem zuwenden, müssen wir uns über die Zeichencodierung im Klaren sein. Wörter und Sätze in jeder Sprache bestehen aus Zeichen. Diese Zeichen sind in Zeichensätzen gruppiert. Jedes Zeichen wird in einem Computerspeicher unter Verwendung eines Binärcodes gespeichert. Mit diesem Code kann der Computer das tatsächliche Zeichen dekodieren. Dieser Binärcode wird als Zeichencodierung bezeichnet.

Verschiedene Sprachen verwenden unterschiedliche Codes, um auf verschiedene Zeichen zu verweisen. Der gleiche Code in zwei Sprachen kann völlig unterschiedliche Zeichen bedeuten. Hierüber wird entschieden, mit welcher Zeichencodierung der Computer arbeitet.

Möglicherweise sehen Sie einige der Zeichensätze auf W3Schools, die im Internet verwendet werden. Gehen Sie zu Wikipedia für den vollständigen Satz von Charakter-Sets.

Hast du gesehen ??? in deinem WordPress Blog?

Es kann einige Ursachen geben, die dazu führen, dass falsche Zeichen angezeigt werden. Zuallererst müssen Sie sicherstellen, dass Sie den gleichen Zeichensatz in Ihrer wp-config.php Datei verwenden. Suchen Sie nach der folgenden Zeile und stellen Sie sicher, dass sie nicht auskommentiert ist:

 define ('DB_CHARSET', 'utf8'); 

Zweitens müssen Sie überprüfen, ob Ihr Theme den Zeichensatz verwendet, der in der Datei wp-config.php festgelegt ist. Suchen Sie in Ihrem HTML nach der folgenden Zeile:

Und schließlich müssen Sie überprüfen, ob Ihr Datenbankinhalt mit der gleichen Zeichensatzkodierung gespeichert ist, die Sie in Ihrer wp-config.php-Datei und HTML verwenden. Wenn Sie phpMyAdmin zum Verwalten Ihrer Datenbank verwenden, können Sie die aktuelle Server-Kollatierung in den Allgemeinen Einstellungen sehen.

Das Ändern des Zeichensatzes der kompletten WordPress-Datenbank ist keine leichte Aufgabe und sollte mit großer Sorgfalt durchgeführt werden. Hier sind die Schritte zum Konvertieren einer Datenbank in den Zeichensatz Ihrer Wahl.

1. Zuerst müssen wir den aktuellen Zeichensatz der Datenbank überprüfen. Hier ist die SQL-Abfrage zum Überprüfen:

 SHOW VARIABLES WIE "character_set_database"; 

2. Wenn der Zeichensatz nicht Ihren Vorstellungen entspricht, sollten Sie eine Sicherungskopie Ihrer Datenbank erstellen, bevor Sie fortfahren.

3. Führen Sie die folgende SQL-Abfrage aus, um den Zeichensatz der vollständigen Datenbank zu ändern:

 ALTER DATABASE MyDb Zeichensatz utf8; 

Ändern Sie "MyDB" in dem Name Ihrer Datenbank.

4. Konvertieren Sie nun die Tabelle "wp-posts" in die von Ihnen gewünschte Zeichencodierung:

 ALTER TABLE wp_posts Zeichensatz utf8; 

Ändern Sie "wp_", wenn Sie ein anderes Präfix verwenden.

Diese Schritte entfernen die Fragezeichen oder andere seltsame Zeichen und zeigen stattdessen korrekte fremde Zeichen an. Wenn Sie viele Spalten in der WordPress-Datenbank haben, die auf einen benutzerdefinierten Zeichensatz eingestellt sind, müssen Sie den Zeichensatz jeder Spalte einzeln ändern.

Da UTF-8 die am häufigsten verwendete Zeichencodierung ist, können Sie das Plug-in UTF-8 DB Converter verwenden, wenn Ihr Blog eine andere Zeichencodierung verwendet und Sie diese in UTF-8 ändern möchten. Obwohl es seit einiger Zeit nicht mehr aktualisiert wurde, wird es seine Aufgabe effizient erfüllen können. Bitte beachten Sie, dass die Konvertierung des Zeichensatzes sehr lange dauert, wenn Sie eine große Datenbank haben.

Erzählen Sie uns von Ihrer Erfahrung, wenn Sie das gleiche Problem haben.