Wordpress sagt zwar Sachen wie code is poetry
, in der Realität regiert aber nur die Transistional-Variante von XHTML. Das muss den Blogger in seinen Postings selbst nicht stören, aber leider überleben auch in der Kommentarfunktion von Wordpress veraltete HTML-Elemente wie <strike>
.
Um das zu beheben kann man Elemente wie <strike>
und <i>
aus der Liste der erlaubeten Formatierungsmittel verbannen, aber dann stehen die weniger HTML-Gebildeten möglicherweise vor dem Problem, dass <b>
weg ist, sie aber mit <strong>
nichts anzufangen wissen. Deswegen habe ich ein Plugin geschrieben, das bei der Anzeige von Kommentaren einfach alle HTML-Fossilien durch ihre modernen Geschwister ersetzt.
<strike>
wird zu<del>
<b>
wird zu<strong>
<i>
wird zu<em>
Nicht-Nerds merken am Ende gar nicht dass sich etwas geändert hat und alle normalen Menschen benutzen die ganzen ollen Kamellen ja ohnehin nicht.
Installationsanleitung: Den unten stehenden Code in eine leere Textdatei kopieren, diese Datei in xhtmlstrictify.php
(oder sonst in irgendwas mit .php
am Ende) umbenennen, in das Wordpress-Verzeichnis /wp-content/plugins/
hochladen, Plugin aktivieren und fertig!
<?php /* Plugin Name: Xhtmlstrictify Plugin URI: http://www.peterkroener.de Description: Turns <code><strike></code> into <code><del></code>, <code><b></code> into <code><strong></code> and <code><i></code> into <code><em></code> Version: 0.1 Author: Peter Kröner Author URI: http://www.peterkroener.de */ function xhtmlstrictify($text) { $alt = array('<strike>', '</strike>', '<b>', '</b>', '<i>', '</i>'); $neu = array('<del>', '</del>', '<strong>', '</strong>', '<em>', '</em>'); $text = str_replace($alt, $neu, $text); return $text; } add_filter('comment_text', 'xhtmlstrictify'); ?>
ToDo: Dafür sorgen, dass neben <strike>
auch der Ersatz <del>
selbst in den Kommentaren verwendet werden kann.
Kommentare (8)
mike ¶
11. Dezember 2007, 19:11 Uhr
Grossartig! Läuft sogar mit Verschachtelung.
Ein Manko oder was in der Art hat's, dass es die Kommentare nicht gleich "korrigiert" in die Datenbank schreibt, aber so ist's auch vollkommen ausreichend.
Danke!
alican ¶
11. Dezember 2007, 19:13 Uhr
Textile ist meiner Meinung nach am besten dafür geeignet. Das ist so simpel, das versteht jeder und es lässt sich auch schneller auf der Tastatur abtippen.
*Fett*
_Kursiv_
"Beschreibungstext":http://url/
Und intern wird alles zu sauberen xhtml umgewandelt.
Peter ¶
11. Dezember 2007, 19:29 Uhr
Zitat mike:
Das Korrigieren vor dem Speichern der Kommentare wäre theoretisch auch möglich, aber ich dachte, es sei besser, wenn man sich die Möglichkeit bewahrt, jederzeit wieder zurückzurudern indem man einfach das Plugin wieder ausknipst.
soophie ¶
11. Dezember 2007, 21:29 Uhr
Zitat alican:
Ich finde es anstrengend immer erst zu suchen, welcher Code grad verwendet wird. Textile oder BBCode oder doch vielleicht jeder seinen Brei. Wieso immer das Rad neu erfinden? Als Zusatz aber durchaus überdenkbar. Ich kann nur keine Plugins schreiben ;)
Peter ¶
12. Dezember 2007, 04:45 Uhr
Bei Textile erspart man sich allerdings den HTML-Krampf, den wir hier manchmal sehen. Wenn man vergisst, das was man zeigen will zu maskieren (
>
für > usw) geht schon mal die komplette Bedeutung eines Postings den Bach runter. Deswegen hab ich erst die Zitierfunktion gebaut, die dämpft das etwas. Optimal finde ich aber Textile auch nicht, jedenfalls nicht, wenn man es mit HTML-Nerds zu tun hat.Ich denke eine Kommentare mit HTML + Zitier-Funktion + Plugins für XHTML Strict + eine Kommentarpreview wären ideal.
soophie ¶
12. Dezember 2007, 09:11 Uhr
Die Vorschaufunktion finde ich auch sehr wichtig. Es gibt für Wordpress AJAX-Plugins, die ein Ändern des gespeicherten Formulars erlauben. Leider lief das bei mir nie :'-(
Ich denke die Kommentarfunktion sollte einfach der Zielgruppe angemessen sein, bei dir Peter reicht da HTML vollkommen, oder? Bei Katzencontent würde sogar ich Textile bevorzugen
Peter ¶
13. Dezember 2007, 12:10 Uhr
Zitat soophie:
Würde ich eher anders herum sehen. Bei mir besteht durchaus die Gefahr, dass man sein Demo-HTML (also was man inhaltlich behandeln will) und sein HTML zum Formatieren durcheinanderbringt. Insofern wäre Textile für mich vielleicht wirklich besser.
RSWhite ¶
14. November 2008, 18:55 Uhr
Danke für den Anreiz & die Plugins, haben mir sehr geholfen ;)