TYPO3 FAL измененное изображение недоступно в переводе

В TYPO3 7.6, когда я обмениваюсь изображением на базовом языке, я не могу добавить это изображение в уже существующую запись перевода.

Например: я добавил изображение pic1.jpg на английском языке (L=0), при переводе на немецкий язык (L=1) pic1.jpg доступен для активации. Позже я удаляю pic1.jpg и добавляю pic2.jpg, возможно, обрезая или иным образом изменяя отношение, чтобы у меня были данные, которые я хочу сохранить.

Я могу удалить запись немецкого перевода и добавить новый перевод как в виде списка, так и на странице-> языки: «Добавить перевод» с сохранением нового изображения (изображений) и всех его изменений, но это обходной путь, теряющий все переведенные поля в процессе.

Если моя память не подводит меня, на вкладке носителя для перевода появлялась затемненная запись FAL после того, как она была добавлена ​​на базовый язык в прежних версиях TYPO3 (6.1).

Ошибка? Или я что-то упускаю?


person bomeyer    schedule 17.10.2016    source источник
comment
Это может быть ошибка: forge.typo3.org/issues/57272   -  person mtness    schedule 02.11.2016


Ответы (2)


Это основная ошибка TYPO3 v7.6, которая существует с 2014 года, но так и не была исправлена. См. Отчет об ошибке: https://forge.typo3.org/issues/57272

Есть несколько способов решить эту проблему. У меня тоже была эта проблема, и для меня она сработала только с первым решением.


1. Создайте ViewHelper
Это решение от Кая Таллафуса, который поделился своим ViewHelper в комментариях к отчету об ошибке 57272 (см. Ссылку на отчет об ошибке выше).

ViewHelper: https://forge.typo3.org/attachments/download/32333/FalTranslationFixViewHelper.php
Использование ViewHelper в шаблоне Fluid:

<util:falTranslationFix record="{record}" tableName="tx_myext_domain_model_foo" relationFieldName="files" as="files">
    <f:if condition="{files -> f:count()} > 0">
      <f:for each="{files}" as="file">
        <a href="{file.publicUrl}">{file.properties.title}</a>
      </f:for>
    </f:if>
</util:falTranslationFix>


2. Установите расширение
Я нашел два расширения, которые, вероятно, исправят ошибку. Я рекомендую первый, но у меня он не работает, но, возможно, он подойдет вам.

  1. repair_translation
  2. faltranslation (доступно только на bitbucket -> bitbucket.org/t3easy_de/faltranslation/src)


3. Включить поле sys_language_uid для FAL Media
Существует обходной путь для перевода FAL Media, в котором вы активируете поле sys_language_uid. Если этот параметр включен, конечный пользователь может выбрать язык для элемента мультимедиа. Это тоже не сработало для меня, но я знаю от друга, что в одном из его проектов это сработало.
Руководство (на немецком языке): www.npostnik.de/typo3/workaround-fuer-uebersetztungen-der-datensaetze-mit-fal-media/


4. Обновление до TYPO3 v8 LTS
Когда вы работаете над проектом, который может быть обновлен до новой версии, вам следует подумать о том, чтобы сделать обновление. Ошибка исправлена ​​в TYPO3 v8 LTS.

person Jan Fässler    schedule 18.09.2017
comment
Самое быстрое решение - установить расширение repair_translation от Стефана Фремкена. Но не забывайте устанавливать версию 1.2.2, а не последнюю: github.com/froemken/repair_translation/ issues / 10 / Я обновился с 7.6 до 8.7, но ошибка перевода все еще существует. - person user2310852; 11.02.2019

Viewhelper не будет работать для поля media в tablep-pair pages / page_labnguage_overlay. (TYPO3 8.7)

Вы должны отделить переведенные части в шаблоне жидкости. Предложение where в запросе должно проверять pid вместо uid. И вы должны проверить наличие соответствующей записи в медиа-поле файла $rawRecord.

person test    schedule 07.05.2018