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>&lt;strike&gt;</code> into <code>&lt;del&gt;</code>, <code>&lt;b&gt;</code> into <code>&lt;strong&gt;</code> and <code>&lt;i&gt;</code> into <code>&lt;em&gt;</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.