[英]TYPO3 FLUIDTEMPLATE How to switch between different backend layouts and only switch between the templates, not the layouts?
我有以下用於切換后端布局的 Typoscript:
10 = FLUIDTEMPLATE
10 {
templateName = TEXT
templateName {
cObject = TEXT
cObject {
data = pagelayout
required = 1
case = uppercamelcase
split {
token = pagets__
cObjNum = 1
1.current = 1
}
}
ifEmpty = Default
}
templateRootPaths {
0 = EXT:package/Resources/Private/Templates/Page/
1 = {$page.fluidtemplate.templateRootPath}
}
partialRootPaths {
0 = EXT:package/Resources/Private/Partials/Page/
1 = {$page.fluidtemplate.partialRootPath}
}
layoutRootPaths {
0 = EXT:package/Resources/Private/Layouts/Page/
1 = {$page.fluidtemplate.layoutRootPath}
}
...
我的目標是:我有不同的后端布局,比如 2 列、3 列......當我切換時,我想從 Resources/Private/ Templates /Page/ 加載 2Columns.html 或 3Columns.html,但保留默認值。資源/私人/布局/頁面/中的 html(網站的主要布局)。 但我總是收到錯誤消息:無法加載 Fluid 模板文件“/package/Resources/Private/Layouts/Page/2Columns”。
我怎樣才能做到這一點?
謝謝!
命名可能會產生誤導。
TYPO3的世界里有很多templates
:
有稱為template
的錯別字配置。 這些由記錄(表sys_template
)或文件( *.typoscript
)組成
有 HTML 文件,其中包含應如何生成頁面的模式(經典HTML-template
)
2.a. 有舊方法的marker-templates
2.b. 有FLUID-templates
。 它們分為三類,存儲在根據其用途命名的單獨文件夾中:
2.bI模板
2.b.二。 偏音
2.b.III. 布局
對於類別 2.bI,我們得到另一個template
。
如果您使用 FLUID,則頁面外觀的主要決定是由您開始使用的template
完成的。
這也是選擇任何 FLUID 文件的唯一條目。
在這個選定的template file
(= 來自文件夾Templates/
),您可以 select layout file
。 有了這個概念,您可以擁有不同的外觀(例如,一列、兩列、三列)和頁眉/頁腳等公共部分。
在layout file
中,您可以定義不同templates
通用的頁面部分。
在partial files
中,您定義可以多次使用或僅構成一個單獨單元的較小部分(例如菜單,或您想要包含圖像的方式)
另一個非唯一名稱是layout
:
在FLUID templates
中,我們有類別layout
(2.b.III),但在一些名為layout
的記錄中也有字段: tt_content.layout
、 pages.layout
、 pages.backend_layout
、 pages.backend_layout_next_level
這些可以改變數據的外觀。
但這必須配置。
您的示例使用pagelayout
,它從pages.backend_layout
和pages.backend_layout_next_level
字段中填充 inheritance 並覆蓋,因此您可以輕松使用它。 正確的是你 select a (FLUID-) template
。
所以:你的定義是正確的。
你不能 select FLUID-layouts
from typoscript 你不需要它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.