Язык страницы (lang) не указан или указан неверно: как исправить
Что это значит
Язык страницы указывают в самом первом теге кода: <html lang="ru">. На сайте этого атрибута нет или в нём записан язык, который не совпадает с текстом. Чаще всего это lang="en", оставшийся от готового шаблона, или код с ошибкой вроде ru_RU.
- Не указан язык страницы (lang). В теге
<html>нет атрибутаlang: браузеру и поисковику приходится угадывать язык страницы. - Язык страницы указан неверно. В атрибуте
langзаписан другой язык, чем у текста страницы (например,enна русской странице), или код языка записан с ошибкой.
Чем мешает
По lang браузер решает, предлагать ли перевести страницу: русскому посетителю Chrome может предложить «перевести с английского». Программы для незрячих читают текст с произношением указанного языка, и русский текст становится непонятным. Поисковики определяют язык в основном по тексту, но неправильная пометка — лишний противоречивый сигнал.
Как исправить
WordPress
- Откройте «Настройки → Общие → Язык сайта» и выберите «Русский» (или «Беларуская мова»). Тема берёт
langиз этой настройки. Еслиlangне меняется, его жёстко прописала тема вheader.php: нужен разработчик. - Для сайта на нескольких языках язык каждой версии задаёт плагин переводов (Polylang, WPML) в своих настройках.
Tilda
- Откройте «Настройки сайта → Ещё → Язык сайта» (в некоторых версиях — «Основное → Язык») и выберите язык. Переопубликуйте все страницы, чтобы атрибут обновился.
1С-Битрикс
- Откройте «Настройки → Настройки продукта → Сайты → Список сайтов», выберите сайт и проверьте поле «Язык». Если в шаблоне
langпрописан вручную, разработчик заменит его на<html lang="<?=LANGUAGE_ID?>">вheader.phpшаблона.
OpenCart
- Язык задаётся в «Система → Локализация → Языки»: у русского языка в поле «Код» должно быть
ru-ru. Шаблон выводит его в<html lang>сам.
Другой движок или свой сервер
- Укажите язык в первом теге страницы:
<html lang="ru">для русского,<html lang="be">для белорусского,<html lang="en">для английского. - Код пишется через дефис, а не через подчёркивание:
ruилиru-RU, но неru_RU.
Пример кода
Замените example.by на адрес своего сайта.
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="utf-8">
Можно не исправлять, если есть более важные проблемы.
Если сайт делал подрядчик
Перешлите ему ссылку на отчёт и эту просьбу:
Укажите, пожалуйста, в шаблоне сайта правильный язык страниц: <html lang="ru"> (для каждой языковой версии свой).
Как проверить, что всё исправлено
Откройте страницу, нажмите Ctrl+U и посмотрите первую строку после <!DOCTYPE html>: там должно быть <html lang="ru">. Проверьте сайт снова на yasnoseo.by.