Cursor

mode

Language Support

logo
logo

Kontaktieren Sie uns

Awesome Image Awesome Image

Allgemein Mein Blog SEO WordPress 14. Februar 2025

Zero-Width-Zeichen aus Deinem WordPress vertreiben

Writen by Peter Kostova

comments 0

Wenn das Unsichtbare sichtbar wird – Zero-Width-Zeichen aus Deinem WordPress vertreiben

Manchmal schleicht sich in unsere Texte ein lautloser Störton: winzige, unsichtbare Zeichen – U + 200B, U + 200D oder U + FEFF – die weder Auge noch Herz erkennen, doch Code und Layout erschüttern. Sie stammen oft aus KI-Generatoren, reisen lautlos durch Copy-&-Paste-Pfade und nisten sich in WordPress ein. Was sie anrichten? Seltsame Umbrüche, zerbrochene Shortcodes, merkwürdige SEO-Signale – kurz: Unruhe im harmonischen Seitenbild.

Lass uns diese Geister gemeinsam bannen.
! Bevor du neuen Code live nimmst, gönn deinem Server bzw. deiner Seite zuerst ein sauberes Backup.


Warum sind Zero-Width-Zeichen ein Problem?

Sie sind wie Sand im Getriebe: winzig, aber wirkungsvoll. Browser stolpern, Themes kapitulieren, Plugins verheddern sich. Wer seine Texte liebt, jagt die Störenfriede fort, bevor sie große Trümmer hinterlassen.


1 | Handarbeit im Editor – die geduldige Methode

  1. Öffne den Beitrag in Gutenberg oder dem Classic Editor.

  2. Wechsle oben rechts in den Code-Editor.

  3. Suche nach seltsam leeren Stellen, nach \u200B, \u200D, , .

  4. Lösche sie oder ersetze sie durch ein normales Leerzeichen.

  5. Speichern, Seite prüfen, aufatmen.

Wann? Wenn es nur wenige Posts betrifft und Du jedem Wort ohnehin noch einmal liebevoll über die Schulter schaust.


2 | Magie per Plugin – Automatik im Hintergrund

Installiere WPCode (oder ein ähnliches Snippet-Plugin) und füttere es mit diesem Zauberspruch:

add_filter( 'the_content', function ( $content ) {
    return preg_replace( '/[\x{200B}\x{200D}\x{FEFF}]/u', '', $content );
});

Aktivieren, speichern, fertig. Von nun an werden die Geister während jeder Seiten­ausgabe lautlos ausgetrieben.


  •  

Empfolen

Bevor du neuen Code live nimmst, gönn deinem Server bzw. deiner Seite zuerst ein sauberes Backup.

Wen du UTF-8-Bytestrings löschen möchtest, solltest du dein Blog nach verschibungen und Formatierung überpruffen. Derade nach U+2028 – Line Separator

				
					/**
 * Bereinigt KI-generierte Texte, indem unsichtbare Unicode-Zeichen entfernt oder ersetzt werden.
 */
function clean_ai_unicode_chars( $content ) {
    // Prüfe, ob Inhalt ein String ist und nicht leer
    if ( ! is_string( $content ) || empty( $content ) ) {
        return $content;
    }

    // Nur im Hauptloop anwenden, um Performance zu schonen
    if ( ! is_main_query() || ! in_the_loop() ) {
        return $content;
    }

    // Zu entfernende Unicode-Zeichen
    $unicode_chars_remove = [
        "\xE2\x80\x8B", // U+200B: Zero-Width Space
        "\xE2\x80\x8D", // U+200D: Zero-Width Joiner
        "\xE2\x80\x8C", // U+200C: Zero-Width Non-Joiner
        "\xEF\xBB\xBF", // U+FEFF: Byte Order Mark
        "\xE2\x81\xA0", // U+2060: Word Joiner
        "\xE2\x80\xA9", // U+2029: Paragraph Separator
    ];

    // Zu ersetzende Unicode-Zeichen mit Ersatz
    $unicode_chars_replace = [
        "\xE2\x80\xA8" => "\n",      // U+2028: Line Separator -> Zeilenumbruch
        "\xE2\x80\x93" => "-",       // U+2013: En-Dash -> Bindestrich
        "\xE2\x80\x94" => "-",       // U+2014: Em-Dash -> Bindestrich
    ];

    // Entferne Zeichen
    $clean_content = str_replace( $unicode_chars_remove, '', $content );

    // Ersetze Zeichen
    $clean_content = str_replace(
        array_keys( $unicode_chars_replace ),
        array_values( $unicode_chars_replace ),
        $clean_content
    );

    return $clean_content;
}
add_filter( 'the_content', 'clean_ai_unicode_chars', 10, 1 );
				
			

Wenn das Unsichtbare sichtbar wird – Zero-Width-Zeichen aus Deinem WordPress vertreiben

Manchmal schleicht sich in unsere Texte ein lautloser Störton: winzige, unsichtbare Zeichen – U + 200B, U + 200D oder U + FEFF – die weder Auge noch Herz erkennen, doch Code und Layout erschüttern. Sie stammen oft aus KI-Generatoren, reisen lautlos durch Copy-&-Paste-Pfade und nisten sich in WordPress ein. Was sie anrichten? Seltsame Umbrüche, zerbrochene Shortcodes, merkwürdige SEO-Signale – kurz: Unruhe im harmonischen Seitenbild.

Lass uns diese Geister gemeinsam bannen.


Warum sind Zero-Width-Zeichen ein Problem?

Sie sind wie Sand im Getriebe: winzig, aber wirkungsvoll. Browser stolpern, Themes kapitulieren, Plugins verheddern sich. Wer seine Texte liebt, jagt die Störenfriede fort, bevor sie große Trümmer hinterlassen.


3 | Handarbeit im Editor – die geduldige Methode

  1. Öffne den Beitrag in Gutenberg oder dem Classic Editor.

  2. Wechsle oben rechts in den Code-Editor.

  3. Suche nach seltsam leeren Stellen, nach \u200B, \u200D, , .

  4. Lösche sie oder ersetze sie durch ein normales Leerzeichen.

  5. Speichern, Seite prüfen, aufatmen.

Wann? Wenn es nur wenige Posts betrifft und Du jedem Wort ohnehin noch einmal liebevoll über die Schulter schaust.