我有一些内容想出现在我的 TYPO3 网站的多个页面上。我可以将其插入到模板中,但我也希望该内容在富文本编辑器中是可编辑的。
所以我有了创建一个隐藏页面的想法,但我不知道如何将这些内容插入到模板中。
它需要select
打字稿声明吗?
另外,作为一个后续问题,我可以添加一些内容吗,仅包括具有此页面 ID作为其在页面层次结构中的直接父级的页面。
我有一些内容想出现在我的 TYPO3 网站的多个页面上。我可以将其插入到模板中,但我也希望该内容在富文本编辑器中是可编辑的。
所以我有了创建一个隐藏页面的想法,但我不知道如何将这些内容插入到模板中。
它需要select
打字稿声明吗?
另外,作为一个后续问题,我可以添加一些内容吗,仅包括具有此页面 ID作为其在页面层次结构中的直接父级的页面。
第二个问题我没听明白。如果您只想将某些记录包含在其他页面下的页面中,那么这显然会起作用:
[PIDinRootline = pages-uid, pages-uid, ...]
temp.foo = RECORDS
temp.foo {
tables = tt_content
source = ID # Enter the object's ID here
}
[end]
另一方面,如果您想包含页面中的所有记录,作为其他页面的子项,请尝试以下操作:
1 = CONTENT
1.table = tt_content
1.select {
pidInList = parent-uid
}
不知道我是否说对了你。德米特里。
temp.foo = RECORDS
temp.foo {
tables = tt_content
source = ID # Enter the object's ID here
}
请注意,ID 是内容记录 ID,而不是页面 ID。
但这并不能回答如何只包含某个父级的页面/记录的问题。
您可以设置一个隐藏页面,然后根据需要通过页面(或下面的整个页面树)上的打字稿“导入”给定页面上的内容元素。“技巧”是将colPos与 select 语句一起使用。有了这个,您甚至可以将多个(不同的)内容元素放在一个(隐藏的)页面中,显示在不同的页面上(取决于它们“所在”的列的设置。
例子:
.
lib.aditionalcontent = COA
lib.aditionalcontent {
10 = CONTENT
10 {
table = tt_content
select.where = colPos = 2
select.orderBy = sorting
select.pidInList = {$PID_STATIC}
}
.
page.10 = TEMPLATE
page.10.template = FILE
page.10.template.file = fileadmin/maintemplate.htm
page.10.workOnSubpart = DOCUMENT_BODY
page.10.marks.ADITIONAL_CONTENT < lib.aditionalcontent
.
请注意,您根据设置内容元素的列设置 colPos,否则它不会显示。
对于必须显示/不应显示在特定页面上的不同内容,您可以使用不同的列来执行此操作。
这也适用于系统文件夹和非隐藏页面。
如果您使用 TemplaVoila,尽管您必须切换到列表视图以查看和设置内容元素的列(如果此非管理员用户没有隐藏),但这也应该有效。
要找出哪个 colPos 编号是该列的哪个位置,请转到 phpMyAdmin 并在tt_content表中搜索字段“colPos”。