Как правильно делать сайты на нескольких языках
Наткнулся на разбор, как в Next.js правильно делать локализацию — и сразу понял, что это не просто техническая деталь, а вопрос, кто увидит ваш сайт.
О чём речь и почему я считаю это важным для сайта
Когда сайт работает на нескольких языках, но URL один — поисковик не знает, что это разные версии. Он думает: «это одна страница, только текст поменялся».
А на деле — это два сайта. И если не прописать hreflang, не разделить URL, не указать язык в HTML — одна из версий может вообще не попасть в индекс.
Это не просто «мало трафика». Это — клиенты, которые ищут на своём языке, но не находят вас.
Как это устроено — что тут вообще происходит
Суть в том, что язык должен быть виден по URL. /en/ и /ru/ — это не просто «две кнопки», это две отдельные страницы.
Каждая версия должна иметь свой HTML, свой title, свой description, свой canonical. И связываться через hreflang — чтобы поисковик понял: это одна и та же страница, но на разных языках.
Если язык меняется через cookie или Accept-Language — поисковик не видит разницы. Он может не индексировать одну из версий, или вообще не понять, что вы работаете на двух языках.
Как понять, что это касается вашего сайта («как я это проверяю»)
Смотрю, есть ли в URL сегмент с языком — /en/, /ru/, /de/. Если нет — сразу ставлю красный флажок.
Проверяю, есть ли hreflang в head. Если нет — это ошибка.
Смотрю, совпадает ли язык в HTML lang с URL. Если нет — проблема.
Проверяю, не теряется ли язык в ссылках. Если /events/12345 — это не /ru/events/12345 — значит, ссылка сломана.
Что с этим делать («что я делаю в таких случаях»)
Если язык меняется по cookie — говорю: «надо переходить на отдельные URL». Это фундамент.
Добавляю hreflang для каждой пары языков. Проверяю, чтобы он был в head и совпадал с URL.
Исправляю lang в HTML — чтобы он соответствовал первому сегменту URL.
Проверяю, чтобы все внутренние ссылки включали язык. Если нет — переписываю маршруты.
Что здесь даёт поддержка
Мы не просто «поправим» — мы закрываем причину. Потому что если не сделать это правильно, через месяц сайт снова будет с теми же ошибками.
Включаем проверку локализации как часть SEO-аудита. Если у клиента есть версии на разных языках — сразу смотрим, как они связаны.
Поисковики и ИИ-ассистенты выбирают понятные и здоровые сайты. Если у вас на сайте два языка — и они не видны поисковику, он не знает, где искать. А если видны — и правильно связаны — он будет показывать нужную версию тому, кто ищет.
работаем с 2002 года, более 100 клиентов по всему миру. Проверьте, как ваш сайт выглядит для поисковиков — бесплатный аудит сайта.