Логотип

Документация по макросам и шаблонам UMI.CMS

pre_lang

Название

%pre_lang% — Выводит языковой префикс текущей языковой версии сайта.

Описание

Если текущая языковая версия отлична от языковой версии по умолчанию, то макрос выведет так называемый языковой префикс («/en», «/de», «/jp»). Если текущая языковая версия является версией по умолчанию, то макрос ничего не выведет.

Дополнительные сведения

Не используется

Можно получать эти данные из глобального массива variables

$lang = $variables['@lang']

В шаблоне Demomarket к этим данным можно обратиться следующим образом

$lang = $variables['lang']

Не используется. Языковой префикс можно получить из значения атрибута lang элемента result.

Например, можно его сохранить в переменную следующим образом:

<xsl:param name="lang" select="result/@lang" />

Если нужно, чтобы в случае языковой версии по умолчанию, префикс содержал пустое значение (как в макрос TPL-шаблонизатора), можно воспользоваться макросом %system getLangsList% (см. пример использования).

Примеры использования

Если на сайте существует несколько языковых версий, то все относительные ссылки в шаблонах нужно предварить %pre_lang%. Например, для корректной работы формы регистрация пользователя, нужно написать так:

<form action="%pre_lang%/users/registrate_do/" method="post" enctype="multipart/form-data">
 ...
</form>
Была ли данная статья полезна?