Протокол ulang и ENTITY, мультиязычность
Материал из Umicms
С помощью протокола ulang и ENTITY (xslt сущностей) мы можем определить набор констант для языковой версии сайта: ru, en, de, fr и т.д. В XSL-шаблоне, сразу после заголовка документа:
<?xml version="1.0" encoding="utf-8"?>
идет подключение файла с константами:
<!DOCTYPE xsl:stylesheet SYSTEM "ulang://i18n/constants.dtd:file">
путь файла с данными:
xsltTpls/i18n/constants.ru.dtdпример файла constants.ru.dtd:
<!ENTITY search-default-text "Поиск"> <!ENTITY login "Логин"> <!ENTITY password "Пароль"> <!ENTITY log-in "Войти"> <!ENTITY log-out "Выход"> <!ENTITY office "Кабинет"
после ENTITY идет имя константы, а потом значение.
В самих XSL-шаблонах, константы вызываются следующим образом:
<xsl:text>&login;</xsl:text>
т.е. знак амперсанда, потом имя константы и точка с запятой. В зависимости от текущей языковой версии сайта, будет подключаться определенный файл:
xsltTpls/i18n/constants.ru.dtd
xsltTpls/i18n/constants.en.dtd
или
xsltTpls/i18n/constants.fr.dtd