Области контента и несколько языков
Область — фрагмент страницы с постоянным кодом, например home.intro или footer.address. Текст хранится в базе данных. Разработчик один раз размещает вызов в шаблоне, после чего редактор меняет содержимое на странице.
Это альтернатива файловым включаемым областям Битрикса для контента. Модуль не исполняет PHP из значения области и не переносит существующие include-файлы автоматически.
Код, тип и значение
| Часть | Назначение |
|---|---|
Определение в ContentItems | Единый код и тип области |
Значение в ContentValues | Текст для конкретного языка и сайта |
| Контекст | Текущие LANGUAGE_ID и SITE_ID, определённые сервером |
Код уникален в хранилище и ограничен 255 символами. Выбирайте понятные текстовые коды с префиксом раздела. Полностью числовой ключ трактуется API как ID, поэтому для символьного кода он не подходит.
| Тип | Когда использовать | Вывод |
|---|---|---|
text | Короткая подпись или заголовок | HTML-символы экранируются |
textarea | Несколько строк обычного текста | Экранирование и сохранение переносов строк |
html | Форматированный фрагмент | Доверенный HTML без экранирования |
Тип относится ко всему определению, а не к одному переводу. HTML-области должны редактировать доверенные сотрудники: это отличается от фильтрации HTML в собственном пользовательском поле модуля.
Изменить содержимое
- Откройте нужную страницу нужного сайта и языка под учётной записью редактора.
- Наведите указатель на область и нажмите карандаш.
- Проверьте код в заголовке окна.
- Измените текст и нажмите «Сохранить».
- Проверьте страницу после обновления. «Отмена» оставляет прежнее значение.

Одна область home.intro, русский контекст. На стенде исходное значение совпадает с кодом; его заменяют содержательным текстом проекта.
Отдельные значения для языка и сайта
Одинаковый вызов showBlock('home.intro') можно использовать на разных сайтах. На каждом выводится только точное совпадение языка и сайта.
| Контекст | Пример значения после заполнения |
|---|---|
ru + s1 | «Добро пожаловать в наш магазин» |
en + s2 | «Welcome to our store» |
Это пример данных, а не автоматический перевод. Язык интерфейса административной панели сам по себе не меняет язык публичной страницы.

На втором сайте home.intro ещё не заполнена. Русский текст не подставляется: редактор показывает пустое значение и английские кнопки.
Если перевод отсутствует, посетитель не получает значение другого языка или сайта. У редактора пустая область получает заметную метку, чтобы её можно было открыть. Нет общего значения «для всех сайтов» и автоматического резервного языка. Старые строки без сайта не используются как запасной вариант.
Подключение в шаблоне
use Bitrix\Main\Loader; use Kokhanenko\Hlblocks\Template\ContentItemWrapper; if (Loader::includeModule('kokhanenko.hlblocks')) { ContentItemWrapper::setScope('home'); ContentItemWrapper::showBlock('intro', 'div', 'intro'); ContentItemWrapper::setScope(null); }
Префикс превращает intro в home.intro. Сбрасывайте его после блока, чтобы он не повлиял на последующие вызовы. Если передаёте полный код, оставьте scope пустым. Имя тега и CSS-класс должны задаваться разработчиком, а не посетителем.
Первое открытие отсутствующей области редактором с правом записи может создать определение типа text. Отсутствующий перевод существующего определения не создаётся простым чтением; заполните его и сохраните форму.
Управление и права
Раздел Kokhanenko → HL-блоки → Области содержит ссылки на оба хранилища и вкладку «Права доступа». Структуру и типы меняет администратор, ежедневные значения удобнее редактировать на странице. Не удаляйте внутренние хранилища вручную и не подключайте к ним общий редактор HL-элементов.
Для чтения без панели редактирования используйте фасад Content. Для разрешений — права доступа.