---
title: "Локали и адреса публикаций — TeqCMS"
description: "Локали и адреса публикаций: практическое руководство по исходникам Markdown, локализованному HTML и публикации на TeqCMS."
date: 2026-09-30
---

# Язык задаётся исходником

Для каждого поддерживаемого языка создайте Markdown-файл с одинаковым относительным путём. Например:

```text
tmpl/web/en/features.md
tmpl/web/ru/features.md
```

## Укажите формат и язык явно

| URL | Представление |
| --- | --- |
| [`/ru/features.html`](/ru/features.html) | HTML из русского исходника |
| [`/en/features.html`](/en/features.html) | HTML из английского исходника |
| [`/ru/features.md`](/ru/features.md) | Точный русский Markdown с метаданными |
| [`/en/features.md`](/en/features.md) | Точный английский Markdown с метаданными |
| [`/features.md`](/features.md) | Нейтральный Markdown, не обязательно на языке читателя |

Используйте `.html`, если ожидаете оформленную страницу, и `.md`, если нужен исходник. Префикс локали задаёт конкретный язык. Для главной страницы используйте `/ru/index.html`, `/en/index.html`, `/ru/index.md` или `/en/index.md`.

## Ссылки без расширения

Адрес страницы без расширения, например `/about`, `/features` или `/ru/features`, выбирает представление по HTTP-запросу клиента: HTML для браузера человека, Markdown для клиента, который его поддерживает. Один формат для всех посетителей такой URL не гарантирует.

Префикс локали фиксирует язык независимо от выбранного формата. Без префикса HTML использует первый поддерживаемый язык по предпочтениям `Accept-Language`, а если совпадений нет — локаль по умолчанию. Это относится и к главному URL `/`. Поэтому `/features` нельзя подписывать как гарантированный английский Markdown.

## У нейтрального Markdown отдельный выбор исходника

Для `/features.md` первым выбирается исходник без локали в `tmpl/web/`. Если его нет, выбирается английский, даже при русском языке по умолчанию; затем — исходник локали по умолчанию. Если нет ни одного из них, нейтральный Markdown возвращает 404. Выбор языка HTML через `Accept-Language` не меняет эту политику Markdown. Если нужен русский исходник, используйте `/ru/features.md`.

Для локализованного HTML нужны исходник именно запрошенного языка и доступный шаблон представления. Если русского файла нет, английская страница по `/ru/features.html` не появится. Локализованные `.md` также требуют исходник именно своего языка.

## Ссылки сохраняют язык

Обычные ссылки навигации сохраняют активную локаль и могут не иметь расширения, если конкретный формат не обещан. В демонстрациях и ссылках с подписью «HTML» или «Markdown» расширение указано явно. Переключатель языка в шапке сохраняет текущий материал; Markdown-ссылка в подвале открывает его исходник на текущем языке.

[Как вести языковые версии](/ru/docs/translate) и [рабочий пример](/ru/features).
