Nachdem ich meine WordPress-Themes auf XHTML 1.1 umgestellt hatte, wurde die Freude durch ein Plug-in getrübt, das invaliden Code erzeugte; das Slimbox WordPress Plugin. Die Slimbox ist ein optischer Klon der bekannten Lightbox JS v2.0 von Lokesh Dhakar und basiert auf dem MooTools-Framework.
Das Problem ist, dass die Slimbox zum Gruppieren der Bilder das ref-Attribut verwendet, dieses in XHTML 1.1 aber keine eckige Klammern enthalten darf. Man muss in lightbox[roadtrip]
also die eckigen Klammern ersetzen. Mögliche Lösungen sind lightbox:roadtrip
oder lightbox_roadtrip
. Das Slimbox-Plug-in sollte wiefolgt angepasst werden.
In der Datei slimbox.php:
1 2 3 4 |
function slimbox_create($content){ return preg_replace('/<a(.*?)href=(.*?).(jpg|jpeg|png|gif|bmp|ico)"(.*?)>/i', '<a$1href=$2.$3" $4 rel="lightbox[roadtrip]">', $content); } add_filter('the_content', 'slimbox_create', 2) |
durch folgendes ersetzen:
1 2 3 4 |
function slimbox_create($content){ return preg_replace('/<a(.*?)href=(.*?).(jpg|jpeg|png|gif|bmp|ico)"(.*?)>/i', '<a$1href=$2.$3" $4 rel="lightbox:roadtrip">', $content); } add_filter('the_content', 'slimbox_create', 2) |