我制作了一个插件,我在“媒体”字段中存储了许多图像,并在“imagecaption”字段中显示了许多字幕。
现在我的愿望是这样显示:
image1.png
caption 1
image2.png
caption 2
image3.png
caption 3
这就是我一直试图做到的,但它不起作用:
plugin.tx_myplugin_pi1 = COA
plugin.tx_myplugin_pi1{
10 = TEXT
10.field = header
10.wrap = <h1>|</h1>
20 = COA
20{
10 = TEXT
10{
field = media
split{
token = ,
cObjNum = 1
1.current = 1
}
}
20 = TEXT
20{
field = imagecaption
split{
token.char = 10
cObjNum = 1
1.current = 1
}
}
}
}
但它并没有真正起作用,因为它首先显示所有文件名,然后显示标题。
我怎么能这样做?
答案 0 :(得分:4)
Split是一个返回所有元素的函数。在20.10之内,您将获得字段图像的内容,并按换行符f.e.然后,你得到20.20的内容有图像标题。
您需要做什么(未经测试):
10 = TEXT
10{
field = media
split{
token = ,
cObjNum = 1
1.current = 1
# for each image, add the imagecaption
1.append = TEXT
1.append {
field = imagecaption
# split saves the index in REGISTER:SPLIT_COUNT
listNum.stdWrap.data = REGISTER:SPLIT_COUNT
listNum.splitChar = 10
}
}
}
答案 1 :(得分:2)
我不认为令牌= \ n是正确的。你需要使用.char = 10。 此外,您还需要以某种方式嵌套您的TS,因为当前的解决方案会逐个处理这些字段。
答案 2 :(得分:0)
我现在不记得了,但我写了一个扩展,为图片和标题添加了一个框架。它可以通过标题解决您的问题:http://typo3.org/extensions/repository/view/ch_imgtext_renderengine/current/。