TYPO3模板并更改div id

时间:2013-10-16 12:16:35

标签: html typo3 typoscript

我在TYPO3中有一个模板,我想用于某些页面,在这里我有一个DIV。

是否可以根据页面UID更改DIV ID。它是唯一改变内容/图像的div,我希望将这个DIV放在我的main.html模板中。

所以,如果

UID = 2 <div id="topbanner_about"></div>
UID = 3 <div id="topbanner_drills"></div>

等...... 我可以这样做,我可以在TS(Typo脚本)中做到这一点,或者我该怎么做,所以我不需要制作5个模板。

2 个答案:

答案 0 :(得分:0)

您可以在模板中插入标记来完成此操作。看起来有点像这样:

在模板中:

[...]
<div id="topbanner_###ID_SUFFIX###"></div>
[...]

在插入模板的TypoScript中:

10 = TEMPLATE
10 {
    template = FILE
    template.file = fileadmin/main.html

    marks {
        ID_SUFFIX = TEXT
        ID_SUFFIX {
            insertData = 1

            # This makes sure that the output is valid and prevents XSS attacks
            htmlSpecialChars = 1

            value = {page:uid}      # Use this to insert the page ID or
            value = {page:subtitle} # Use to insert subtitle of page
            ... # Same works for other fields of the page record.
        }
    }
}

如果默认页面提供的字段不够,您可以在页面记录中添加另一个字段。最好的方法是建立一个扩展来实现它。

答案 1 :(得分:0)

我发现了一个更好的解决方案,如果我使用ressource并添加图像,并在下一页上只使用其他图像执行相同操作,然后在我的主TS中添加此代码。

lib.imageElement = FILES
lib.imageElement {
  references {
    data = levelmedia:-1,slide
    listNum = 0
  }
  renderObj = COA
  renderObj {
    10 = IMAGE
    10 {
      file.import.data = file:current:originalUid
      altText.data = file:current:title
    }
  }
}

这样做,然后它在每个页面的顶部/标题中显示不同的图像。 但是...... ...