我想每隔15天更换一次图片。或者一个月两次。当日期介于1和15之间时是一个图像,如果它是16到30,则另一个,等等,是一年中的24个图像。我希望它是管理图像变化的typoscript。
我接受了以下的错字:
lib.headerlogo1 = COA
lib.headerlogo1 {
10 = LOAD_REGISTER
10 {
divSem.cObject = TEXT
divSem.cObject {
data = date:U
strftime = %U
current = 1
setCurrent.data = date:U
setCurrent.wrap = |/2
prioriCalc = 1
}
}
20 = FILES
20 {
references {
data = levelmedia: -1, slide
}
renderObj = IMAGE
renderObj {
file.import.dataWrap = {file:current:storage}:{file:current:identifier}
#file.import.listNum = 0
altText.data = file:current:title
# Affiche bien la valeur de : divSem
#stdWrap.insertData = 1
#stdWrap.wrap = <div class="banner{register:divSem}">|</div>
}
# insertData = 1
insertData = 1
# IT'S FAILLED !!
begin = {register:divSem}
maxItems = 1
}
30 = TEXT
30 {
stdWrap.insertData = 1
stdWrap.wrap = <div class="{register:divSem}">|</div>
}
}
问题是我无法启动注册表begin = {register:divSem}
的值...它始终从0开始!你有好主意吗 ? 30 = TEXT
中的寄存器显示是正确的。
你有一个好主意来修改typoscript吗?
答案 0 :(得分:0)
我刚刚找到了解决方案,而不是begin = {register: divSem}
,我这样做了:
begin.cObject = TEXT
begin.cObject {
value = 0
value.override.cObject = CASE
value.override.cObject {
key.data = register:divSem
1 = TEXT
1.value = 1
2 = TEXT
2.value = 2
...
24 = TEXT
24.value = 24
default = TEXT
default.value = 2
}
}
也许有更简单的,如果你有想法,我很感兴趣。
最好的问候。
答案 1 :(得分:0)
您发现了重要的细节:您需要.cObject
来填充简单属性中的所有数据。
为什么与输出与密钥相同的CASE
这么复杂?
最简单的方法是:
begin.cObject = TEXT
begin.cObject.data = register:divSem
也许这也像您在.30
中一样工作:
begin = {register:divSem}
begin.insertData = 1
以及您的.30
的更直接方式:
代替.insertData
的{{1}}使用.wrap
.dataWrap