TYPO3如何创建自定义“信息框”?

时间:2016-10-04 19:49:16

标签: typo3

我正在尝试用TYPO3制作一个“信息框”。

在我的HTML模板中,我有信息框:

<div id="infobox">
   <!-- ###infobox### start -->
     CONTENT from the backend
   <!-- ###infobox### start -->
</div>
...

现在在我的后端,我有一个内容元素,它保留我的信息框在前端的内容:

Backend

我想要做的是:如果我通过后端的“停用按钮”enter image description here禁用了内容元素,我想更改#infobox的CSS(添加< / strong> display:none)或者如果我重新启用它,我想删除 display:none

我希望我能解释一下我的问题,并希望有人可以帮助我。

2 个答案:

答案 0 :(得分:0)

您可以使用自定义流体内容元素

请参阅:http://www.creativeworkspace.de/blog/artikel/eigene-inhaltselemente-im-typo3-cms-62x-und-7x/

或:https://docs.typo3.org/typo3cms/extensions/fluid_styled_content/7.6/AddingYourOwnContentElements/Index.html

或您使用自定义布局

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)中,并且启用字段的设置是每个表的全局。