Typo3 получает путь к изображению с помощью CONTENT

Я настраиваю новый сайт на typo3 с каруселью начальной загрузки в заголовке. Эта карусель находится в верхней части каждой страницы сайта, поэтому я создал для нее партиал. Проблема в том, что я хочу, чтобы изображения карусели можно было обменивать через серверную часть. Итак, я создал элемент изображения на скрытом сайте и попытался получить изображения с помощью опечатки. Пока это выглядит так:

lib.slider=CONTENT
lib.slider {
    table=tt_content


    wrap=<div class="item"><img src="|" /></div>

    select {
        pidInList=12
        where=uid=10

    }


}

Я получаю изображения таким образом, и они отображаются в слайдере, но только в отформатированном виде, со всей этой <csc-textpic>-ерундой вокруг. Есть ли способ получить только путь к изображению, чтобы его просто нужно было обернуть <img src""/>? Или, если есть более элегантный способ вставить карусель, я также открыт для новых предложений.


person knigge    schedule 30.12.2014    source источник


Ответы (1)


Вместо использования элемента содержимого на скрытой странице вы можете использовать вкладку «Ресурсы» страницы, где вы можете загружать файлы (в вашем случае изображения). Обычно для этого вы используете страницу на верхнем уровне вашего дерева страниц TYPO3, поэтому вы можете наследовать выбранные изображения для всех подстраниц.

Ресурсы страницы TYPO3

После того, как вы загрузили / выбрали изображения на страницу, вы можете использовать следующий TypoScript для рендеринга слайдера изображений.

lib.slider = FILES
lib.slider {
  references {
    data = levelmedia:-1, slide
  }
  renderObj = IMAGE
  renderObj {
    file.import.data = file:current:uid
    file.treatIdAsReference = 1
    altText.data = file:current:title
    wrap = <div class="slide">|</div>
  }
  stdWrap.wrap = <div class="slider">|</div>
}

В приведенном выше примере я использую levelmedia:-1, slide для наследования выбранных изображений с текущей страницы на все подстраницы. Удалите все обертки в приведенном выше примере, если вы просто хотите выводить теги img во внешнем интерфейсе.

person derhansen    schedule 30.12.2014
comment
Пока это работает очень хорошо, спасибо. Есть ли способ указать идентификатор страницы, чтобы typoscript загружал изображения только с одной страницы? Насколько я понимаю, теперь он сначала загружает ресурсы со страницы im on (если im на подстранице, он загружает изображения, хранящиеся там). И поскольку я не очень хорошо разбираюсь в опечатках, есть ли способ подсчитать картинки для навигации по карусели? - person knigge; 30.12.2014
comment
Да, вы можете указать загрузку изображений с одной страницы с помощью references { table = pages uid.data = YOUR-PAGE-UID fieldName = media }. Я не знаю, можно ли подсчитать количество изображений в TS, но если вы используете JS-карусель, я бы посоветовал вам использовать JavaScript для подсчета количества изображений. - person derhansen; 30.12.2014
comment
Как мы можем отображать изображение случайным образом? - person raj; 20.03.2018
comment
@raj Создайте новый вопрос. - person derhansen; 21.03.2018
comment
@derhansen Я нашел ответ, нам нужно добавить listNum = rand в опцию ссылок, чтобы изображение отображалось случайным образом. то есть) ссылки {data = levelmedia: -1, slide listNum = rand} - person raj; 23.03.2018