将后端内容添加到Typo3扩展模板

时间:2020-04-23 11:23:32

标签: typoscript typo3-9.x typo3-extensions

我创建了Typo3扩展程序,并将一些.html页面添加到了模板文件夹中,并在其中预填充了硬编码的HTML代码。然后,我将设置添加到了setup.typoscript

page = PAGE
page {
    typeNum = 0
    shortcutIcon = ""
    // Part 1: Fluid template section
    10 = FLUIDTEMPLATE
    10 {
        templateName = TEXT
        templateName.stdWrap.cObject = CASE
        templateName.stdWrap.cObject {
            key.data = pagelayout
            pagets__tjms_default = TEXT
            pagets__tjms_default.value = Main-Template
            pagets__2 = TEXT
            pagets__2.value = Start-Content
            pagets__3 = TEXT
            pagets__3.value = Tutorial-Content
            pagets__4 = TEXT
            pagets__4.value = Assistent-Content
            default = TEXT
            default.value = Main-Template
        }
        templateRootPaths {
            0 = EXT:tjms/Resources/Private/Templates/Page/
            1 = {$page.fluidtemplate.templateRootPath}
        }
        partialRootPaths {
            0 = EXT:tjms/Resources/Private/Partials/Page/
            1 = {$page.fluidtemplate.partialRootPath}
        }
        layoutRootPaths {
            0 = EXT:tjms/Resources/Private/Layouts/Page/
            1 = {$page.fluidtemplate.layoutRootPath}
        }
    }

我已经在Typo3后端中添加了页面并激活了我的插件。现在,我可以看到来自.html文件的内容,这很好。但是我的问题来了。在我的Typo3后端中,我也想向页面添加动态内容,但是无论何时,即使我专门将其添加到页面中,该内容也不会显示在页面上。仅向我显示硬编码的.html代码,但我在后端添加的任何内容都不会弹出。

所以我的问题是我是否必须以某种方式配置扩展名或向html模板中添加内容,以便它们在后端显示内容?

我正在使用Typo3 9.5.14。

感谢您的帮助!

enter image description here enter image description here

1 个答案:

答案 0 :(得分:1)

除了模板之外,您还需要变量来将内容动态填充到该FLUID模板中。

您需要使用模板中的变量,例如{content}(或{content->f:format.raw()}),并且需要填充以下变量:

page {
    10 {
        variables {
            content < styles.content.get

            test = TEXT
            test.value = my text from typoscript.
            test.wrap = <p>|</p>
        }
    }
}

或者您使用viewhelper从类似EXT:bootstrap_package的viewhelper调用列中获取内容:

<f:cObject typoscriptObjectPath="lib.dynamicContent" data="{pageUid: defaultPage, colPos: '0'}" />