Thomas Kieslich - Neues im Blog

TYPO3 7.4 - neue Content Möglichkeiten

TYPO3 7.4 ist erschienen. Das UI des Backends wurde verbessert. Vor allem wurde einiges an Vorbereitung zum Entfernen der Erweiterung css styled content (csc) getroffen. Außerdem ist es jetzt möglich Backendlayouts im PageTS anzulegen. Das ermöglicht die Versionierung und Weiterverwendung.

Data Prozessoren für den Content

Das  FLUIDTEMPLATE wurde um 5 Data-Prozessoren erweitert. Damit lassen sich z.B. Felder mit mehreren Elementen (IRRE) parsen bevor sie an das Fluid Template gesendet werden. Dadurch werden spezielle ViewHelper (z.B. aus dem bootstrap_package) zum großen Teil überflüssig und die Templates übersichtlicher. Hier ein etwas umfangreicheres Beispiel:

tt_content.uxce_stage = COA
tt_content.uxce_stage {
  20 = FLUIDTEMPLATE
  20 {
    templateName = Stage
    layoutRootPaths.10 = {$plugin.uxce.view.layoutRootPath}
    partialRootPaths.10 = {$plugin.uxce.view.partialRootPath}
    templateRootPaths.10 = {$plugin.uxce.view.templateRootPath}
    dataProcessing.10 = TYPO3\CMS\Frontend\DataProcessing\DatabaseQueryProcessor
    dataProcessing.10 {
      if.isTrue.field = tx_uxce_slider_item
      table = tx_uxce_slider_item
      orderBy = sorting
      as = slides
      dataProcessing {
        10 = TYPO3\CMS\Frontend\DataProcessing\FilesProcessor
        10 {
          references.fieldName = uxce_slide_image_landscape
          references.table = tx_uxce_slider_item
          as = image_landscape
        }
        20 = TYPO3\CMS\Frontend\DataProcessing\FilesProcessor
        20 {
          references.fieldName = uxce_slide_image_portrait
          references.table = tx_uxce_slider_item
          as = image_portrait
        }

        30 = TYPO3\CMS\Frontend\DataProcessing\DatabaseQueryProcessor
        30 {
          if.isTrue.field = button
          table = tx_uxce_button
          where = tablename="tx_uxce_slider_item" AND
          where.data = field:uid
          where.wrap = uid_foreign=|
          orderBy = sorting
          as = buttons
          dataProcessing {
            10 = TYPO3\CMS\Frontend\DataProcessing\FilesProcessor
            10 {
              references.fieldName = uxce_button_icon
              references.table = tx_uxce_button
              as = icon
            }
          }
        }
      }
    }
  }
}

Das ganze ist ein Content Element das einen Slider darstellt. Das CE enthält mehrere Slides. Jeder Slide enthält zwei Bilder und mehrere Button Datensätze mit jeweils wieder einem Bild. Wie man sehr schön sieht lassen sich die verschiedenen Prozessoren gut verschachteln. Insbesondere der DatabaseQueryProzessor hat es in Verbindung mit den TypoScript Möglichkeiten in sich. Nach meinem Wissen sind an Optionen erlaubt:

'pidInList',          
 'uidInList',          
 'languageField',           
'selectFields',           
'max',           
'begin',          
 'groupBy',           
'orderBy',          
 'join',           
'leftjoin',           
'rightjoin',           
'recursive',          
 'where'

da geht was smiley

Fazit

Die uralte Blackbox  csc wird verschwinden. Über die Jahre hat sie aber durchaus gute Dienste geleistet. Mal sehen wie sich das entwickelt. Ich denke die Reihenfolge wird zukünftig Sql, TCA, FLUIDTEMPLATE mit DataProzessoren und recht übersichtliche Fluid Templates sein. Der Weg ist etwas anders als bei NEOS, aber sehr vielversprechend.

Thomas Kieslich
Jordanstr. 5
01099 Dresden

0351 2817620
0176 99758866
post@thomaskieslich.de