i18n:translate

Этот атрибут определяет текст, который должен быть переведен с помощью системы перевода, встроенной в PHPTAL.

<div i18n:translate="string:welcome_message">Добро пожаловать!</div>

В вышеприведенном примере PHPTAL будет искать перевод с ключем 'welcome_message' и заменит содержимое тега эквивалентным переводом.

<div i18n:translate="">Добро пожаловать!</div>

А это другой случай: ключ для перевода не указан, поэтому PHPTAL воспользуется содержимым 'Добро пожаловать!' как ключем для перевода. Таким образом, будет подставлен эквивалентный перевод для ключа 'Добро пожаловать!'.

Если же перевода с таким ключем не найдено, то в качестве перевода будет использован сам ключ. Именно поэтому лучше использовать читабельные сообщения в качестве ключей вместо непонятных сокращений.

Мало того, ключ может задаваться переменной:

<div tal:define="welcome random_welcome_message">
  <div i18n:translate="welcome"></div>
</div>