后端布局和Typoscript在Typo3中不适用于基本2Column



我创建了一个名称为" doublecolumn"的后端布局。现在,在后端管理面板中,我有2列左右。我添加了一些左右列的虚拟内容。但是,当我为DoubleColumn模板编写Typoscript时。然后它向我显示了我在前端的错误。我该如何修复此错误?

这是我遇到的错误

糟糕,发生了错误!尝试解决模板文件的 控制器操作"标准 ->索引"以" .html"为"标准 ->索引",但没有 路径包含预期的模板文件((。没有路径 配置。

有关此错误的更多信息可能可以在线获得。

basic2columnpage.html

<div class="left-column">
    <f:format.raw>{Leftcontent}</f:format.raw>
</div>
<div class="right-column">
    <f:format.raw>{Rightcontent}</f:format.raw>
</div>

DoubleColumn是一个页名,我在DoubleColumn模板中添加了此Typoscript

page = PAGE
page {
  10 = FLUIDTEMPLATE
  10 {
    file.stdWrap.cObject = CASE
    file.stdWrap.cObject {
      key.data = levelfield:-1, backend_layout_next_level, slide
      key.override.field = backend_layout
      1 = Text
      1.value = fileadmin/templates/demo/Resources/Private/Layouts/Basic2ColumnPage.html
    }
    variables {        
      Leftcontent >StyleSheet.content.get
      Leftcontent.select.where = colPos=0          
      Rightcontent < styles.content.get
      Rightcontent.select.where = colpos=1
    }
  }
}

这是我的后端布局(ts-config(

mod.web_layout.BackendLayouts {
  exampleKey {
    title = Example
    icon = EXT:example_extension/Resources/Public/Images/BackendLayouts/default.gif
    config {
      backend_layout {
        colCount = 2
        rowCount = 1
        rows {
          1 {
            columns {
              1 {
                name = Left content
                colPos = 0
              }
              2 {
                name = Right content
                colPos = 1
              }
            }
          }
        }
      }
    }
  }
}

不要太复杂。属性file是可能的,但不是很灵活。而且您错过了新(后端(布局的配置。
TSCONFIG中定义的布局以pagets__前缀(两个下划线!(。

一种干净的配置方式是:

  1. 使用路径:
    10 {
        templateRootPaths.1 = EXT:site_ext/Resources/Private/Templates
        partialRootPaths.1 = EXT:site_ext/Resources/Private/Partials
        layoutRootPaths.1 = EXT:site_ext/Resources/Private/Layouts    
        :
  1. 仅指定模板的名称(您不需要文件扩展名(:
        :
        templateName = TEXT
        templateName.cObject = CASE
        templateName.cObject {
            key.data = levelfield:-1, backend_layout_next_level, slide
            key.override.field = backend_layout
            #Default Template
            default = TEXT
            default.value = Default
            1 = TEXT
            1.value = Basic2ColumnPage
            pagets__Example = TEXT
            pagets__Example.value = Example
       }
       :

您可以立即在字段中使用该值,但是您的模板需要具有特殊名称,或者您必须剥离前缀。并确保如果不存在匹配模板会发生什么。

最新更新