簡體   English   中英

TYPO3 FLUIDTEMPLATE 如何在不同的后端布局之間切換並且只在模板之間切換,而不是在布局之間切換?

[英]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

  1. 有稱為template的錯別字配置。 這些由記錄(表sys_template )或文件( *.typoscript )組成

  2. 有 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.layoutpages.layoutpages.backend_layoutpages.backend_layout_next_level
這些可以改變數據的外觀。
但這必須配置。

您的示例使用pagelayout ,它從pages.backend_layoutpages.backend_layout_next_level字段中填充 inheritance 並覆蓋,因此您可以輕松使用它。 正確的是你 select a (FLUID-) template


所以:你的定義是正確的。

你不能 select FLUID-layouts from typoscript 你不需要它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM