MyBB.de Forum

Normale Version: [NG] V1.2.9: MyBB nicht mehr XHTML-valid
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,

MyBB ist seit der akuellen Version 1.2.9 nicht mehr 100% xhtml-valid nach xhtml 1.0 transitional. Ich habe mein Forum (und auch dieses zum Vergleich) durch den w3-Validator geschickt und habe folgenden Fehler ausgegeben bekommen:

W3-Validator schrieb:Validation Output: 1 Error

Line 2, Column 1: Missing xmlns attribute for element html. The value should be: http://www.w3.org/1999/xhtml.

<html lang="de">

Many Document Types based on XML need a mandatory xmlns="" on the root element. For example, the root element for XHTML will look like:
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

Entweder hat das W3C was geändert oder der Doctype im MyBB stimmt nicht mehr. Im Template "htmldoctype -> Original ändern" kann ich das zwar ändern, aber ich weiß nicht genau, welcher Pfad da rein muss, damit es wieder sauber validiert.

Weiß jemand die Lösung? Smile
Der Validator ist meines Wissens überarbeitet worden.

Öffne die Datei inc/functions.php und suche nach:
PHP-Code:
$contents str_replace("<html""<html lang=\"".$lang->settings['htmllang']."\""$contents); 
Ersetzen durch:
PHP-Code:
$contents str_replace("<html""<html xmlns=\"http://www.w3.org/1999/xhtml\" xml:lang=\"".$lang->settings['htmllang']."\" lang=\"".$lang->settings['htmllang']."\">"$contents); 

Siehe auch: http://community.mybboard.net/showthread.php?tid=16618
Alles klar, danke. Wink Da lag ich mit dem doctype-template sogar falsch... Big Grin

EDIT: Der Link zu mybboard.net funktioniert nicht, weil ich dort nicht registriert bin. Ich hoffe, dass die functions.php in MyBB 1.4 angepasst sein wird.
Upps, der Thread ist in einem internen Forum. Da steht:
Zitat:This bug has been fixed in the latest code.

Please note the latest code is not live on the site or for download. An update will be released in 1.4 which contains this fix.
Nochmal danke für die Info. Smile
Michael schrieb:Ersetzen durch:
PHP-Code:
$contents str_replace("<html""<html xmlns=\"http://www.w3.org/1999/xhtml\" xml:lang=\"".$lang->settings['htmllang']."\" lang=\"".$lang->settings['htmllang']."\">"$contents); 
Kleiner Fehler im Code. Ein > ist zuviel gewesen.

Neuer Code:
PHP-Code:
$contents str_replace("<html""<html xmlns=\"http://www.w3.org/1999/xhtml\" xml:lang=\"".$lang->settings['htmllang']."\" lang=\"".$lang->settings['htmllang']."\""$contents);