TypoScript: условная переноска, если более одного элемента
Хм... мои навыки работы с TypoScript стали немного ржавыми.
lib.feld < styles.content.get
lib.feld.select.orderBy = rand()
lib.feld.select.select.where = colPos=11
lib.feld.wrap = <div class="wrapper">|</div>
Я хотел бы добавить div обертки, только если styles.content.get
возвращает более одного элемента для указанного colPos
,
Я пробовал следующие два варианта:
lib.feld.wrap.if {
isGreaterThan.numRows < styles.content.get
isGreaterThan.numRows.select.where = colPos=11
value = 1
}
а также
lib.feld.wrap.if {
isGreaterThan.numRows.table = tt_content
isGreaterThan.numRows.select < styles.content.get.select
isGreaterThan.numRows.select.where = colPos=11
value = 1
}
также с дополнительным stdWrap
перед numRows. Все возвращает false, даже если должно быть несколько результатов.
Что случилось?
1 ответ
Решение
Из опечатки я бы сказал:
temp.feld < styles.content.get
temp.feld.select.where = colPos=11
temp.feld.select.orderBy = rand()
temp.feld.select.pidInList = 123
lib.feld < temp.feld
lib.feld.wrap = <div>|</div>
lib.feld.wrap.if {
isGreaterThan.stdWrap.numRows < temp.feld
value = 1
}
для проверки / отладки значения numRows
Вы можете использовать это:
lib.numRows = TEXT
lib.numRows.numRows < temp.feld
lib.numRows.wrap = numRows=[|]
который вы можете использовать в жидкости
{f:cObject(typoscriptObjectPath:'lib.numRows')}
или в самом typoscript для вывода
page.3 < lib.numRows