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

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

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

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

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

<!DOCTYPE xsl:stylesheet SYSTEM "lang://21">
  • где 21 - идентификатор XSL-шаблона.

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

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

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

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

<h1>&labelSearch;</h1>

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

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

Last updated