设置
我想将数据从我的项目传输到TYPO3实例。假设我有一个HTML导出,在我的TYPO3目录中生成大约20个不同的HTML文件。这些文件包含来自不同系统的数据,并且数据更新频繁,因此我会使用最新信息定期覆盖它们。
问题
我想告诉TYPO3将每个文件的HTML内容加载为自己的页面。请注意:这些页面不是完整的html文档(没有<html>
或<body>
标签)。相反,我希望这些文件中的任何代码都显示在TYPO3页面的上下文中。有点像TYPO3 HTML PageContent,但我希望HTML的源代码来自文件。
我不在乎是否必须手动设置每个页面,但我还没有找到任何方法让TYPO3 Page或PageContent从文件中获取数据。你知道这有可能吗?
注意:在我的情况下,iframe不是解决方案。我使用的是TYPO3 7.6.23
答案 0 :(得分:2)
我的回答基于以下假设:
您有一个“前端提供商扩展”EXT:yourext;如果没有,你可以使用正确的'fileadmin / etcetera / Resources / Private / Etcetera'改变EXT:yourext/Resources/Private/Etcetera
之类的每条路径
您在数据库上使用backend_layout
来存储后端布局,并使用该字段来控制前端模板。我不记得在版本7中你是否也可以使用key.data=pagelayout
当然你必须调整backend_layout项的ID
要包含的文件将是部分文件,存储在文件夹EXT:yorext/Resources/Private/Partials/
中,并将命名为
MyFileToIncludeOne.html
MyFileToIncludeTwo.html
et cetera
基本的TypoScript将类似于:
page.10 = FLUIDTEMPLATE
page.10{
templateName= TEXT
templateName.stdWrap {
cObject = CASE
cObject {
key.data = levelfield:-2,backend_layout_next_level,slide
key.override.field = backend_layout
//I assume you already have some templates
1 = TEXT
1.value = Default
2 = TEXT
2.value = Home
//The layouts for the "pages with html files" begin here
10 = TEXT
10.value = MyFileOne
11 =TEXT
11.value = MyFileTwo
}
}
layoutRootPaths {
0 = EXT:yourext/Resouces/Private/Layouts/Page/
}
partialRootPaths {
0 = EXT:yourext/Resouces/Private/Partials/Page/
}
templateRootPaths {
0 = EXT:yourext/Resouces/Private/Template/Page/
}
}
所以,在前几行中, 模板MyFileOne.html将包含部分MyFileToIncludeOne.html,只需写入:
<f:render partial="MyFileToIncludeOne"/>
如果要将文件分开,也可以使用不同的路径:
partialRootPaths {
0 = EXT:yourext/Resouces/Private/Partials/Page/
1 = fileadmin/some/other/path/
}
我希望我没有忘记重要的段落。随意请求澄清