我正在尝试用TYPO3制作一个“信息框”。
在我的HTML模板中,我有信息框:
<div id="infobox">
<!-- ###infobox### start -->
CONTENT from the backend
<!-- ###infobox### start -->
</div>
...
现在在我的后端,我有一个内容元素,它保留我的信息框在前端的内容:
我想要做的是:如果我通过后端的“停用按钮”禁用了内容元素,我想更改#infobox
的CSS(添加< / strong> display:none
)或者如果我重新启用它,我想删除 display:none
。
我希望我能解释一下我的问题,并希望有人可以帮助我。
答案 0 :(得分:0)
您可以使用自定义流体内容元素
请参阅:http://www.creativeworkspace.de/blog/artikel/eigene-inhaltselemente-im-typo3-cms-62x-und-7x/
或您使用自定义布局
TCEFORM.tt_content {
layout {
addItems {
item1 = Name of Layout
}
}
}
之后,您可以在模板
中使用{data.layout}获取它{f:if(contition:'{data.layout} == item1',then:'display:none')}
答案 1 :(得分:0)
据我了解,您希望内容元素的禁用标志仅影响渲染输出,而不是关闭渲染。
我担心这不容易。 disabled
列是TYPO3所谓的启用字段的一部分,TYPO3 API会在其中添加各种检查。因此,&#34;隐藏&#34;通常甚至都没有从数据库中选择记录,因此它们也从不被提供给渲染引擎。
另一种方法是使用自定义内容类型和自定义字段,隐藏&#34;隐藏&#34;该类型的表单中的字段,并将自定义字段放在其位置。这一切都可以通过标准的TYPO3核心机制完成。
然而,你无法避免的是,某人将能够隐藏/禁用页面或列表模块中的内容元素。这是无法避免的,因为您的内容需要与其他内容位于同一个表(tt_content
)中,并且启用字段的设置是每个表的全局。