> For the complete documentation index, see [llms.txt](https://support.morozovpimnev.ru/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://support.morozovpimnev.ru/multilanguage/internacionalizaciya-v-xsl-shablonakh.md).

# Интернационализация в XSL-шаблонах

В HostCMS интернационализация XSL-шаблонов осуществляется с использованием сущностей. Часто используемы внешние данные могут быть предварительно объявлены как сущности, а затем использованы в XSL-шаблоне.

Такое решение позволяет использовать один и тот же XSL-шаблон на разных сайтах, работающих на разных языках.

Для каждого языка, используемого на сайтах системы, автоматически создается отдельный DTD, который доступен при редактировании XSL-шаблона. Добавление нового языка автоматически добавляет для него DTD.

<div data-full-width="true"><img src="/files/6S3Stl2nuoMF5SHzkmOU" alt="Редактирование информации об XSL-шаблоне"></div>

Подключение соответствующего языку DTD происходит автоматически, для этого в XSL-шаблоне указывается:

{% code lineNumbers="true" fullWidth="true" %}

```xml
<!DOCTYPE xsl:stylesheet SYSTEM "lang://21">
```

{% endcode %}

* *где **21** - идентификатор XSL-шаблона.*

#### Объявление сущностей в DTD

<div data-full-width="true"><img src="/files/2EJVaKU2EmeKDrna4b4z" alt="Код DTD для языка &#x22;ru&#x22;"></div>

<div data-full-width="true"><img src="/files/YX0aY5hnzH9hPSzTGkNV" alt="Код DTD для языка &#x22;en&#x22;"></div>

Например, объявление сущности **labelSearch**:

{% code lineNumbers="true" fullWidth="true" %}

```xml
<!ENTITY labelSearch "Поиск">
```

{% endcode %}

позволяет в дальнейшем использовать ее в XSL-шаблоне:

{% code lineNumbers="true" fullWidth="true" %}

```xml
<h1>&labelSearch;</h1>
```

{% endcode %}

или в атрибутах

{% code lineNumbers="true" fullWidth="true" %}

```xml
<img src="/images/my-image.png" alt="&labelSearch;" title="&labelSearch;" />
```

{% endcode %}
