Ich bin nicht sicher, ob WordPress selbst oder Tiny MCE das tut. Aber wenn
ich zwischen HTML und Visual Editor wechsle , wird jedes Mal, wenn ich hin und her wechsle , eine neue hinzugefügt. Ich habe nicht einmal einen Zeilenumbruch im Code, es scheint irgendwie zu entscheiden, wo es sie basierend auf den Tags in meinem HTML-Code platzieren möchte.
Was ist die Ursache und wie behebe ich das?
Ich habe dies bereits in der Template-Funktionsdatei ausprobiert:
//disable auto p
remove_filter ('the_content', 'wpautop');
remove_filter ('comment_text', 'wpautop');
// Remove auto formatting
remove_filter('the_content', 'wptexturize');
remove_filter('comment_text', 'wptexturize');
remove_filter('the_title', 'wptexturize');
Antworten:
Alles, was ich benutze, ist,
remove_filter( 'the_content', 'wpautop' ); remove_filter( 'the_excerpt', 'wpautop' );
dass Wordpress keine zusätzlichen Markups erstellt. Kopieren Sie Ihren Code aus einem externen Editor und fügen Sie ihn ein?quelle
s hinzuIch habe festgestellt, dass nicht unterbrechende Leerzeichen eingefügt werden, wenn ich nach einem Punkt zwei Leerzeichen verwende. Der Editor scheint den zusätzlichen Platz als Versuch zu interpretieren, Leerzeichen für die Textformatierung zu verwenden.
Wenn ich meinen Artikel aus dem Wordpress-Editor in einen Texteditor kopiere, der Hex-Anzeige unterstützt (ich verwende EditPad Pro), sehe ich, dass Text, von dem ich dachte, er sei ein Punkt, gefolgt von zwei Leerzeichen, in Wirklichkeit Text ist, gefolgt von einem einzelnen Leerzeichen, gefolgt vom Unicode-Zeichen mit dem Hex-Code A0, dem Unicode - Zeichen NO-BREAK SPACE .
Ich konnte das nicht unterbrechende Leerzeichen in vorhandenen Artikeln entfernen, indem ich das Leerzeichen gefolgt vom Zeichen NO_BREAK SPACE durch ein Leerzeichen ersetzte. In den meisten Texteditoren sollten Sie dies mit Suchen & Ersetzen tun können, indem Sie die "zwei Leerzeichen" in das Textfeld Suchen kopieren und ein einzelnes Leerzeichen in das Textfeld Ersetzen schreiben.
Ich konnte das Problem in Zukunft vermeiden, indem ich nach einem bestimmten Zeitraum nur ein Leerzeichen eintippte.
quelle
Jeglicher Inhalt, der zu Ihrem Beitragsinhalt hinzugefügt oder daraus entfernt wird, wird durch
tiny_mce_init
die Inhaltsfilterungsregeln von verursacht .Die Möglichkeiten, dies zu verhindern, sind:
tiny_mce_init
, um die Standardregeln für die Inhaltsfilterung zu überschreibenBeispielgebrauch für den
tiny_mce_before_init
Filter im Codex. Ein weiteres Beispiel für die Konfiguration / Anpassung von TinyMCE in Codex finden Sie hier .quelle
Ich benutze Wordpress für ein hebräisches Blog.
Umgehung: Kopieren Sie den Text in einen Editor wie sublime oder notepad ++ und suchen und ersetzen Sie ihn durch normale Leerzeichen. Sie können eine davon aus dem Text kopieren.
Haftungsausschluss: Dies ist keine wirkliche Antwort und eher eine Problemumgehung. Für mich ist Wordpress glücklich, überall und ohne Reim oder Grund nbsp hinzuzufügen. Nicht sicher, was es verursacht. Es passiert viel mehr mit hebräischem Text als mit irgendeinem englischen Text.
quelle
Für den Fall, dass es im Jahr 2020 noch jemanden gibt, der daran festhält. Wir hatten dieses Problem, nachdem wir eine Reihe von Inhalten auf Wordpress migriert hatten. Ratet mal, jeder hat das Kopieren und Einfügen gemacht und wir haben am Ende viel zu viel Inhalt, um ihn manuell reparieren zu können. Ich habe die PHP-Funktion unten implementiert und sie zu functions.php hinzugefügt und das Problem für uns gelöst.
Der 999999 soll nur sicherstellen, dass dieser Filter zuletzt ausgeführt wird, falls diese
irgendwo in der Mitte hinzugefügt werden.quelle
In der CSS-Datei. Ins
display: inline-flex
Innere legenthe excerpt
. Die zusätzlichen Leerzeichen stören nicht mehr. funktioniert bei mirquelle