在TYPO3 7.6中,我想查找Fluidtemplate中另一个(=任意)页面的记录。
根据https://docs.typo3.org/typo3cms/TyposcriptReference/ContentObjects/Fluidtemplate/Index.html,我尝试DatabaseQueryProcessor
:
renderObj = FLUIDTEMPLATE
renderObj {
file = {$fluidPartialsPath}/Debug.html
dataProcessing {
20 = TYPO3\CMS\Frontend\DataProcessing\DatabaseQueryProcessor
20{
# regular if syntax
if.isTrue.field = records
table = tt_content
# quick&dirty to see the SQL table
# where = stubrdebug
# will pass these in programmatically later
colPos = 1
uidInList = 5
# this doesn't work
pidInList = *
as = myrecords
dataProcessing {
10 = TYPO3\CMS\Frontend\DataProcessing\FilesProcessor
10 {
references.fieldName = image
}
}
}
}
}
问题是,select总是要求pid或添加当前页面。所以它的行为类似于CONTENT
对象。
如何在查询中省略PID?
我可以谷歌指出的所有答案只是简单地使用RECORDS
- 但我不知道如何在dataProcessing
中做到这一点。
有办法吗?
更大规模的PS:我想使用fluid_styled_content的“插入记录”内容元素将OTHER(=不是来自fsc),自定义记录类型插入当前页面。我正在努力建立一种自己的方式来做到这一点。请告诉我这是否有意义和/或是否比从头开始构建所有内容更容易。
答案 0 :(得分:2)
据我所知,setTimeout( function() {
$.ajax({
url: URL
//Your remaining code
})
},120000)
仅适用于之前需要填写的当前dataProcessing
变量,例如通过$data
对象。
CONTENT
对象使用CONTENT
函数获取数据,因此您必须使用其select
属性来配置考虑的页面范围。没有网页的记录应该位于pidInList
,并且可以通过root (pid=0)
关键字进行选择。
如果您想创建root
功能,那么您的记录中应该已经有Insert Records
列表。然后,您可以简单地使用uid
对象来呈现特定记录,无论它在哪个页面上。