WordPress hat mit der Funktion wptexturize eine eingebaute Funktion zur Verbesserung der Typographie. So richtig beliebt ist diese Funktion leider nicht, weshalb im Netz viele Anleitungen kursieren, wie man sie deaktiviert. Das liegt an den vielen Fällen, wo diese Funktion leider nicht richtig funktioniert. Was das mit der deutschen Übersetzung und den Anführungszeichen zu tun hat, erkläre ich in diesem Artikel.
Wenn ein Text in WordPress in Anführungszeichen (") gesetzt wird, dann wandelt ein Filter (der unter anderem wptexturize
aufruft), dieses Zollzeichen in ein typografisches Anführungszeichen um. Entsprechend der deutschen Typografie also vorne unten so geschwungen, dass es eine „99“ ergibt. Schließende Anführungszeichen werden entsprechend oben, aber andersherum geschwungen („66“) angezeigt.
Die Standardsprache von WordPress ist en_US, also Amerikanisches Englisch. Die Unicode-Zeichen sind dementsprechend für die amerikanische Typografie. In der deutschen Übersetzung von WordPress „übersetzen“ wir daher absichtlich anders, um die Typgrafie an den deutschen Standard anzupassen.
In dem bisherigen Text kann man gut sehen, dass WordPress das tadellos schafft. Aber was passiert, wenn der Filter nicht weiß, ob es sich wirklich um ein Anführungszeichen handelt?
Verwirren wir den Filter mit einem Punkt direkt nach dem schließenden Anführungszeichen.
„test“
„test“.
Pah! Kein Problem. Und jetzt mit einem Link.
Upps. 🙁
Das Ticket dazu ist schon ewig alt und war geschlossen. Ich habe es wieder geöffnet, denn der Link scheint WordPress nachhaltig zu verwirren, wenn ich mir diesen Testcase mal anschaue:
text „[link]„.
text „[link]„, text.
text „[link]„; text.
text „[link]„- text.
text „text [link]„.
text „text [link]„…
text „text [link]„text.
text „text 1234“.
text „text 1234“ text.
Manchmal ist der Filter aber auch erstaunlich gut, die richtigen Anführungszeichen zu erkennen:
Und dann sagte er: „Gib mir meinen 19″-Monitor zurück“.
Für Spezialfälle wo ein Zollzeichen auch wirklich ein Zollzeichen bleiben soll, kann "e;
im Text-Modus des Editors genutzt werden.
Und wer darauf keine Lust mehr hat, weil all die Problemfälle genau bei euch zutreffen, dann kann mit diesem kleinen Snippet einfach alles auf die ebenfalls erlaubten Guillemets umgestellt werden. Das Snippet überschreibt einfach die Übersetzung an dieser Stelle. Wer es auch für die einfachen Anführungszeichen benötigt, kann das Snippet leicht erweitern.
Kennst Du noch mehr Spezialfälle, wo wptexturize
nicht erfolgreich ist? Oder hast Problem das Snippet zu erweitern? Ab damit in die Kommentare!