Перевод для элементов содержимого серверной части TYPO3

#typo3 #fluid #typo3-10.x

#опечатка3 #текучий #typo3-10.x

Вопрос:

Как я могу получить строку перевода в серверной части TYPO3?

В обзоре языка в Бэкэнде у меня отображаются мои пользовательские элементы контента. Если заголовок ссылки не задан, кнопка имеет значение по умолчанию для конкретного языка:

  • RU: Читать дальше
  • DE: Mehr erfahren

Во внешнем интерфейсе у нас есть <f:translate , но в бэкэнде это не работает?

Версия: TYPO3 V10 LTS

Ответ №1:

в зависимости от того, где находится ваш лейбл. строка определяется в TCA (массив конфигурации таблицы) или Flexform. в обоих случаях вы используете ссылку LLL вместо метки

обычно что-то вроде этого:

LLL:EXT:my_ext/Resources/Private/Language/backend.xlf:my_label_name

позвольте мне выбрать и объяснить различные части:

LLL: обработайте этот локальный языковой ресурс aht (аналогично http: в URL-адресе)

EXT: это путь расширения, проверяющий префиксы, такие как typo3conf/ext/ или typo3/sysext

my_ext/Resources/Private/Language/backend.xlf путь к файлу

:my_label_name метка внутри файла

Комментарии:

1. Мы настроили внутренние макеты для элементов содержимого. Итак, что мне нужно, так это плавный синтаксис (f: translate не работает в бэкэнде). Другим вариантом является PHP для загрузки языкового ключа, поскольку у нас есть предварительная загрузка кода для элементов содержимого на PHP.

Ответ №2:

<f:translate> также работает в бэкэнде.

Языковой файл должен, по крайней мере, выглядеть следующим образом:

 <?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<xliff version="1.0">
    <file source-language="en" datatype="plaintext" original="messages" date="2013-08-22T11:22:55Z" product-name="efemtpy">
        <header/>
        <body>
            <trans-unit id="title">
                <source>Title</source>
            </trans-unit>
        </body>
    </file>
</xliff>
 

Может быть, ты забыл <source> метку -, как я уже делал раньше.