У меня есть шаблон WordPress, который содержит следующий элемент:
<html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes('xhtml'); ?>>
Это возвращает:
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="en-US" xml:lang="en-US">
К сожалению, атрибут "lang" является недопустимым для XHTML 1.1, и клиенту нужен этот уровень проверки.
Файл general-template.php WordPress содержит следующий код:
if ( get_option('html_type') == 'text/html' || $doctype == 'html' )
$attributes[] = "lang=\"$lang\"";
$doctype
— это переданный ему параметр (в данном случае «xhtml»). Должен ли get_option
возвращать значение, отличное от text/html? Если да, то что мне нужно настроить в WordPress для достижения этой цели?
Я также пытался использовать preg_replace для удаления атрибута «lang», но, похоже, это не соответствовало тексту. Если я ввожу текст вручную, он совпадает! Возможно, проблема с кодировкой строки, возвращаемой language_attributes?