Три варианта
| Вариант | Русская версия | Английская версия | Немецкая версия |
|---|---|---|---|
| Слаг переводится на язык версии | /ru/dostavka/ | /en/delivery/ | /de/lieferung/ |
| Общий слаг для всех языков | /ru/delivery/ | /en/delivery/ | /de/delivery/ |
| Идентификатор вместо слова | /ru/p/125/ | /en/p/125/ | /de/p/125/ |
Переводить ли слаг
- Переводить, если аудитория каждой версии читает адрес и ей важна понятность на родном языке.
- Оставлять общим, если важнее простота поддержки и однозначное соответствие страниц между версиями.
- Идентификатор подходит только для служебных страниц, содержательным страницам нужны осмысленные слова.
Для русской версии слаг записывается транслитерацией латиницей по правилам, описанным в статье про таблицу транслитерации. Для других языков слово берётся из их же перевода заголовка страницы.
Как получить слаг
Диакритические знаки
В европейских языках встречаются буквы с надстрочными знаками. В адресе их лучше привести к простому латинскому виду по единому правилу.
| Язык | Исходное | В адресе |
|---|---|---|
| Немецкий | Lieferung, Größe, Übersicht | lieferung, groesse, uebersicht |
| Французский | Livraison, à propos | livraison, a-propos |
| Испанский | Envío, España | envio, espana |
| Польский | Dostawa, Łódź | dostawa, lodz |
Единообразие и связь с hreflang
Что бы вы ни выбрали, применяйте выбранный подход ко всем страницам и всем языкам: смешивать переведённые и общие слаги внутри одной версии нельзя. Наборы hreflang при этом строятся по таблице соответствия страниц, а не по слагам — подробнее в статье про локализацию маршрутов и о нормализации Unicode.
Как выбрать подход
- Определите аудиторию: читают ли пользователи адреса и важна ли для них понятность на родном языке.
- Оцените ресурсы: переведённые слаги требуют участия переводчика и таблицы соответствия страниц.
- Выберите единый подход для всех языков и зафиксируйте его в правилах сайта.
- Автоматизируйте формирование слагов и наборов hreflang, чтобы исключить ручные ошибки.
Типичные ошибки
- Часть страниц переведена в адресе, часть оставлена общей без правила.
- Слаг менялся вместе с изменением перевода заголовка, а редирект со старого не настроен.
- В адрес попали буквы с диакритикой, которые кодируются процентными последовательностями.
- Слаги разных страниц совпали из-за автоматического сокращения.
Как хранить соответствие страниц
Для мультиязычного сайта удобно вести таблицу, в которой каждая страница имеет собственный идентификатор, а слаги для каждого языка хранятся отдельно. Тогда наборы hreflang и переключатель языков строятся автоматически, а изменение слага в одной версии не ломает связи с остальными.
page_id ru en de
125 dostavka delivery lieferung
126 oplata payment zahlung
Частые вопросы
Нужно ли переводить слаг на язык каждой версии?
Не обязательно: важнее единообразие; переведённые слаги удобнее пользователям, общие проще в поддержке.
Как записать в адресе немецкие буквы с умлаутами?
Привести к простому виду по единому правилу, например ü — ue, ä — ae, ö — oe, ß — ss.
На чём строить hreflang, если слаги в версиях разные?
На таблице соответствия страниц между версиями, а не на совпадении слагов.
Готовый адрес можно собрать прямо сейчас: откройте генератор ЧПУ — он транслитерирует фразу по таблице Яндекса, уберёт служебные слова и покажет длину адреса.