Я хочу вывести строку в отрендеренный HTML, используя два запасных варианта.
Мой опечатка определена на странице верхнего уровня (корневой странице моего сайта) и передается всем страницам на более низких уровнях.
Состав:
Обычный вывод файла:
Строка происходит из поля TemplaVoila (Page / Edit / Extended / MyField): field_copyright_name
Чтобы вывести его в нужную точку в выводе HTML, существует отображение templaVoila (Тип: Путь объекта Typoscript) с именем: lib.copyright_name
Следующая распечатка делает работу:
lib.hint_copyright_name = COA
lib.hint_copyright_name.10 = TEXT
lib.hint_copyright_name.10 {
setCurrent.dataWrap = {field:field_copyright_name}
current = 1
}
Это работает для всех страниц на всех уровнях, где поле (в свойствах страницы) не пустое.
Первый запасной вариант:
Если поле пустое (в свойствах этой страницы, например, на уровне 2), typoscript должен получить значение из страниц выше (на уровне 1, и если оно тоже пустое, оно должно получить его с домашней страницы). Понятия не имею, как это сделать. Вы можете помочь?
Второй запасной вариант
Если первый запасной вариант все еще возвращает пустую строку (поскольку поле было пустым на всех уровнях), он должен выполнить откат к значению по умолчанию «Авторские права от меня».
Включить этот запасной вариант без «первого отступления» легко:
switchdefault_copyright_name = TEXT
switchdefault_copyright_name {
setCurrent.dataWrap = {field:field_copyright_name}
current = 1
override = "Copyright by me"
override.if.isFalse.field = field_copyright_name
}
lib.hint_copyright_name = COA
lib.hint_copyright_name.10 < switchdefault_copyright_name
Но как интегрировать "первый запасной вариант"?
EDIT:
Я пытался:
setCurrent.data = {levelfield:-1, field_copyright_name, slide}
или
setCurrent.data = levelfield:-1, field_copyright_name, slide
или
setCurrent.dataWrap = {levelfield:-1, field_copyright_name, slide}
или
setCurrent.dataWrap = levelfield:-1, field_copyright_name, slide
но без успеха - без вывода.