56
TYPO3 CMS 7.0 - What’s New bersicht der neuen Funktionen, ˜nderungen und Verbesserungen Patrick Lobacher (GF +Pluswerk GmbH) http://www.plus-werk.com 02/December/2014 Creative Commons BY-NC-SA 3.0

TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

  • Upload
    vantram

  • View
    262

  • Download
    4

Embed Size (px)

Citation preview

Page 1: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

TYPO3 CMS 7.0 - What’s NewÜbersicht der neuen Funktionen, Änderungen

und Verbesserungen

Patrick Lobacher (GF +Pluswerk GmbH)http://www.plus-werk.com

02/December/2014Creative Commons BY-NC-SA 3.0

Page 2: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Einführung

Einführung

(Die Fakten)

TYPO3 CMS 7.0 - What’s New

Page 3: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Einführung

TYPO3 CMS 7.0: Die Fakten

Veröffentlichungsdatum: 2. Dezember 2014Entwicklungs- und Veröffentlichungszeitplan:

TYPO3 CMS 7.0 - What’s New

Page 4: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Einführung

TYPO3 CMS Roadmap

Folgende Roadmap wurde vom TYPO3 CMS Team beschlossen:

7.0 02.12.2014 Backend Overhaul Vol 1

7.1 17.02.2015 Core Cleanup Streamlining

7.2 10.03.2015 Frontend

7.3 21.04.2015 Composer Ecosystem

7.4 09.06.2015 Backend Overhaul Vol 2

7.5 28.07.2015 tbd

7.6 13.10.2015 pre-LTS inferno

7.7 xx.xx.2015 LTS!!

Quelle: https://typo3.org/typo3-cms/roadmap/

TYPO3 CMS 7.0 - What’s New

Page 5: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Einführung

TYPO3 CMS 7.0: Die Fakten

SystemvoraussetzungenPHP v5.5.x - v5.6.x

memory_limit >= 128Mmax_execution_time >= 240sBeim Selbstkompilieren darauf achten, dass die Option –disable-ipv6nicht verwendet wird

MySQL v5.5.x - v5.6.x (no strict mode)Disc Space

200 MB Disk SpaceBackend

zugänglich für IE > 9 und normale Browser

TYPO3 CMS 7.0 - What’s New

Page 6: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Einführung

TYPO3 CMS 7.0: Installation

Offizieller Installationspfad für Linux/Mac OS X(Document Root ist z.B./var/www/site/htdocs:$ cd /var/www/site$ wget get.typo3.org/7.0$ tar xzf typo3_src-7.0.x.tar.gz$ cd htdocs$ ln -s ../typo3_src-7.0.x typo3_src$ ln -s typo3_src/index.php index.php

$ ln -s typo3_src/typo3 typo3

Benutzer von Windows Vista und 7 verwenden mlink, unter WindowsXP/2000 junction um die symbolischen Links zu erzeugen

TYPO3 CMS 7.0 - What’s New

Page 7: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Einführung

TYPO3 CMS 7.0: Upgrade

Ein direktes Upgrade ist nur von TYPO3 CMS 6.2 LTS möglich

Benutzer einer niedrigeren Version als TYPO3 CMS 6.2 LTS, solltenzunächst auf TYPO3 CMS 6.2 LTS upgraden und von dort zurgewünschten Version (TYPO3 CMS 7.x)

TYPO3 CMS 7.0 - What’s New

Page 8: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

BackendUI

Kapitel 1:

Backend User Interface

TYPO3 CMS 7.0 - What’s New

Page 9: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

BackendUI

Allgemeines

Das Backend Userinterface wurde komplett überarbeitet

Als Basis wurde hierfür Twitter Bootstrap (3.2.x) verwendet

Sämtliche Icons wurden erneuert und graphisch im "Tile Style"überarbeitet

Für Icons wird Font Awesome verwendet (4.2.x)

Die Funktionenleiste links wurde hierzu ebenfalls graphisch angepasst

Die Icons wurden im Flat-Design, monochrom, farbig und mitabgerundeten Ecken entworfen

TYPO3 CMS 7.0 - What’s New

Page 10: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

BackendUI

Look & Feel

TYPO3 CMS 7.0 - What’s New

Page 11: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

BackendUI

Look & Feel

TYPO3 CMS 7.0 - What’s New

Page 12: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

BackendUI

Look & Feel

TYPO3 CMS 7.0 - What’s New

Page 13: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

BackendUI

Login

Neues Backend Login unter http://www.domain.com/typo3

TYPO3 CMS 7.0 - What’s New

Page 14: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

BackendUI

Obere Leiste

Die obere Leiste wurde überarbeitet

TYPO3 CMS 7.0 - What’s New

Page 15: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

BackendUI

List Module

Das List Module wurde graphisch komplett überarbeitetEbenfalls angepasst wurde das Clipboard

TYPO3 CMS 7.0 - What’s New

Page 16: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

BackendUI

Frischer Table-Stil

Das Tabellen-Layout wurde aufgefrischt

TYPO3 CMS 7.0 - What’s New

Page 17: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

BackendUI

Suche für Seite und Liste

Oberhalb der Ansicht "Liste" und "Seite" kann per Klick auf die Lupeeine Suche eingeblendet werden (diese befand sich früher statisch amEnde der Seite):

TYPO3 CMS 7.0 - What’s New

Page 18: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

BackendUI

Badge Anzeige für offene Dokumente

Wenn man die Extension "Open Documents" installiert hat, wird dieAnzahl der offenen Dokumente über die Bootstrap "badge" Funktionangezeigt

TYPO3 CMS 7.0 - What’s New

Page 19: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

BackendUI

Flash-Messages

Die FlashMessage-Boxen im Backend wurden überarbeitetDafür wurde der Kontrast von Text und Box erhöht und die Links besserhervorgehoben

TYPO3 CMS 7.0 - What’s New

Page 20: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

BackendUI

Media-Player in Info-Fenster

Sobald man die Informationen über eine Datei aufruft (i-Symbol, z.B. inDateiliste) werden die Meta-Daten hierzu angezeigtAb sofort wird bei HTML5 Audio- und Video-Dateien auch einVideoplayer eingeblendet, über den die Datei sofort angehört bzw.angesehen werden kann

TYPO3 CMS 7.0 - What’s New

Page 21: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

TSconfig & TypoScript

Kapitel 2:

TSconfig & TypoScript

TYPO3 CMS 7.0 - What’s New

Page 22: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

TSconfig & TypoScript

TSconfig für Linkvalidator inkludieren

Die TSconfig Konfiguration wird entweder aus dem aktiven TSconfig desBackends gelesen wenn der Linkvalidator verwendet wird oder auf derKonfiguration, die über den Scheduler-Task mitgegeben wird

Das folgende TSconfig kann vom Linkchecker ausgelesen werdenmod.linkvalidator.mychecker.myvar = 1

Dort steht das TSconfig als $this->tsConfig zur Verfügung

TYPO3 CMS 7.0 - What’s New

Page 23: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

TSconfig & TypoScript

Links zu deaktivierten Datensätzen im Linkhandler melden

Bisher hat der Linkhandler lediglich gewarnt, wenn es Links zugelöschten odern nicht existierenden Datensätzen gab.

Über die folgende TSconfig Einstellung kann nun auch eine Warnungeingeschaltet werden, wenn der Link auf einen deaktivierten Datensatzzeigt

Einstellung im TSconfig:mod.linkvalidator.linkhandler.reportHiddenRecords = 1

TYPO3 CMS 7.0 - What’s New

Page 24: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

TSconfig & TypoScript

Abhängigkeiten von Klassen im RTE

Um das Handling mit komplexen CSS Frameworks wie Twitter Bootstrapzu handhaben, muss es möglich sein, mehrere Klassen an ein Elementzu vergeben

Mit diesem neuen Feature muss der Autor nur noch einen Styleauswählen um dies zu erreichen und nicht mehrereRTE.classes.[ *classname* ] {

.requires = liste von klassennamen (die von der Klasse benoetigt

werden)

TYPO3 CMS 7.0 - What’s New

Page 25: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

TSconfig & TypoScript

Nicht-selektierbare Klassen im RTE

Man kann nun Klasses als "nicht-selektierbar" im Style-Selektor desRTE konfigurieren

// Ein Wert von 1 laesst die Klasse selektieren, bei 0 ist sie nicht-selektierbar

RTE.classes.[ *classname* ] {.selectable = 1

}

TYPO3 CMS 7.0 - What’s New

Page 26: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

TSconfig & TypoScript

Mehrere CSS-Dateien im RTE

Man kann nun mehrere CSS-Dateien in den RTE laden

RTE.default.contentCSS {file1 = fileadmin/myStylesheet1.cssfile2 = fileadmin/myStylesheet2.css

}

Gibt man kein CSS an, so wird das Default-CSS untertypo3/sysext/rtehtmlarea/res/contentcss/default.cssgeladen

TYPO3 CMS 7.0 - What’s New

Page 27: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

TSconfig & TypoScript

Exception während Rendering erzeugen - Teil 1

Sobald Fehler im Rendering von einzelnen Content Objekten (z.B.mittels USER) auftreten, wird eine Fehlermeldung erzeugt, die diegesamte Ausgabe zerstört

Daher wurde ein Exception-Handling eingeführt, welches eineFehlermeldung in die Ausgabe an der Stelle integriert, in welcher dasRendering stattgefunden hat

TYPO3 CMS 7.0 - What’s New

Page 28: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

TSconfig & TypoScript

Exception während Rendering erzeugen - Teil 2

# Default exception handler (aktiviert im Production Kontext)config.contentObjectExceptionHandler = 1# Angabe einer Klasse fuer einen individuellen Exception Handlerconfig.contentObjectExceptionHandler = TYPO3\CMS\Frontend\ContentObject\Exception\

ProductionExceptionHandler# Anpassen der Fehlermeldung - Einfuegen eines Zufall-Codesconfig.contentObjectExceptionHandler.errorMessage = Oops an error occurred. Code: %s# Konfiguration von Exception Codes, die nicht behandelt werdentt_content.login.20.exceptionHandler.ignoreCodes.10 = 1414512813# Deaktierung des Exception Handling fuer ein individuelles Plugin/Content Objectstt_content.login.20.exceptionHandler = 0# ignoreCodes und errorMessage koennen global konfiguriert werden...config.contentObjectExceptionHandler.errorMessage = Oops an error occurred. Code: %sconfig.contentObjectExceptionHandler.ignoreCodes.10 = 1414512813# ... oder lokal fuer individuelle Content Objektett_content.login.20.exceptionHandler.errorMessage = Oops an error occurred. Code: %stt_content.login.20.exceptionHandler.ignoreCodes.10 = 1414512813

TYPO3 CMS 7.0 - What’s New

Page 29: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Änderungen im System

Kapitel 3:

Änderungen im System

TYPO3 CMS 7.0 - What’s New

Page 30: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Änderungen im System

Integration von jQuery UI 1.11.2

jQuery UI 1.11 unterstützt AMD (Asynchronous Module Definition), mitwelcher man nicht mehr die komplett jQuery UI laden muss

Daher wurde diese Version in TYPO3 integriert und ersetzt nun jQueryUI 1.10 + Scriptaculous.

Weiterhin werden nur der Core und die Interaction Componentsinkludiert, welche notwendig sind um ExtJS und Scriptaculous zuersetzen.

Widgets wurden nicht inkludiert, sondern über Bootstrap realisiert (wieDatePicker, Spinner, Dialog, Buttons, Tabs, Tooltip)

jQuery UI 1.11 wurde von folgender URL geholt:https://github.com/jquery/jquery-ui/tree/1-11-stable/ui/

TYPO3 CMS 7.0 - What’s New

Page 31: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Änderungen im System

Einführung einer Registry für die File Rendering Classes

Um verschiedene Dateiformate zu rendern, wird eine Registry benötigt,bei der sich FileRenderer registrieren können. Dies geschieht für"Name" (z.B. Video, Mpeg, Avi, Wav, ...) wie folgt:<?phpnamespace ...;class NameTagRenderer implements FileRendererInterface {

protected $possibleMimeTypes = array(’audio/mpeg’, ’audio/wav’, ...);public function getPriority() {

return 1; // je hoeher, desto wichtiger der Renderer, 100 ist maximum}public function canRender(FileInterface $file) {

return in_array($file->getMimeType(), $this->possibleMimeTypes, TRUE);}public function render(FileInterface $file, $width, $height, array $options = array(),

$usedPathsRelativeToCurrentScript = FALSE) {...

return ’HTML-Code’;}

}

TYPO3 CMS 7.0 - What’s New

Page 32: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Änderungen im System

Evaluierungsfunktion "email" für das TCA

Es wurde für das TCA eine neue Evaluierungsfunktion "email"hinzugefügt, welche serverseitig überprüft, ob ein eingegebener Werteine gültige Email ist. Im Fehlerfall wird eine Flash-Messageausgegeben

’email’ => array(’exclude’ => 1,’label’ => ’LLL:EXT:wd_products/Resources/Private/Language/

locallang_db.xlf:tx_wdproducts_domain_model_contactpe’config’ => array(’type’ => ’input’,’size’ => 30,’eval’ => ’email,trim’

),)

TYPO3 CMS 7.0 - What’s New

Page 33: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Änderungen im System

Einführung einer abstrakten Condition im TypoScript

Es gibt nun eine AbstractCondition, von der von eigene Conditionsableiten kannclass TestCondition extends \TYPO3\CMS\Core\Configuration\TypoScript\ConditionMatching\

AbstractCondition {public function matchCondition(array $conditionParameters) {

if ($conditionParameters[0] === ’= 7’ && $conditionParameters[1] === ’!= 6’) {throw new TestConditionException(’All Ok’, 1411581139);

}}

}

Die Verwendung im TypoScript sieht wie folgt aus:[Vendor\Package\TestCondition]

[Vendor\Package\TestCondition = 7][Vendor\Package\TestCondition = 7, != 6]

Welche Operatoren in der Condition zur Verfügung stehen, wird in derKlasse selbst festgelegt

TYPO3 CMS 7.0 - What’s New

Page 34: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Änderungen im System

Signal zur Manipulation des HTML-Tags in IconUtility

Signal für IconUtility zur HTML-Tag Manipulation

dispatch(’TYPO3\\CMS\\Backend\\Utility\\IconUtility’, ’buildSpriteHtmlIconTag’, array($tagAttributes, $innerHtml, $tagName));

Wird aufgerufen in:

TYPO3\CMS\Backend\Utility\IconUtility\buildSpriteHtmlIconTag

TYPO3 CMS 7.0 - What’s New

Page 35: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Änderungen im System

Signal Slots für SoftReferenceIndex

Es wurden zwei Signal Slot Dispatch Calls innerhalb vonSoftReferenceIndex in den Methoden getTypoLinkParts() undsetTypoLinkPartsElement() zugefügt:protected function emitGetTypoLinkParts($linkHandlerFound, $finalTagParts, $linkHandlerKeyword,

$linkHandlerValue) {return $this->getSignalSlotDispatcher()->dispatch(get_class($this), ’getTypoLinkParts’, array(

$linkHandlerFound, $finalTagParts, $linkHandlerKeyword, $linkHandlerValue));}

protected function emitSetTypoLinkPartsElement($linkHandlerFound, $tLP, $content, $elements, $idx, $tokenID) {

return $this->getSignalSlotDispatcher()->dispatch(get_class($this), ’setTypoLinkPartsElement’,array($linkHandlerFound, $tLP, $content, $elements, $idx, $tokenID, $this));

}

Wird aufgerufen inTYPO3\CMS\Core\Database\SoftReferenceIndex->findRef_typolink undTYPO3\CMS\Core\Database\SoftReferenceIndex->getTypoLinkParts

TYPO3 CMS 7.0 - What’s New

Page 36: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Änderungen im System

Signal Slots für afterPersistObjetct

Bislang gab es nur ein Signal, wenn ein Objekt im Repository (Extbase)aktualisiert wurde - nämlich afterUpdate. Da aber ein AggregateRoot beispielsweise Subobjekte ebenfalls persistiert, benötigt es einSignal, welches erst dann emmitiert wird, wenn alle Objekte einesAggregate Roots persistiert wurden:

protected function emitAfterPersistObjectSignal(DomainObjectInterface$object) {

$this->signalSlotDispatcher->dispatch(__CLASS__, ’afterPersistObject’,array($object));

}

Wird aufgerufen inTYPO3\CMS\Extbase\Persistence\Generic\Backend->persistObject

TYPO3 CMS 7.0 - What’s New

Page 37: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Änderungen im System

Signal Slots für loadBaseTca

Mit diesem Signal kann das gesamte TCA (anstelle von Teilen) gecachtwerden.

protected function emitTcaIsBeingBuiltSignal(array $tca) {list($tca) = static::getSignalSlotDispatcher()->dispatch(__CLASS__, ’

tcaIsBeingBuilt’, array($tca));$GLOBALS[’TCA’] = $tca;}

Wird aufgerufen inTYPO3\CMS\Core\Utility\ExtensionManagementUtility\Backend->buildBaseTcaFromSingleFiles

TYPO3 CMS 7.0 - What’s New

Page 38: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Änderungen im System

API um gecachte TCA Änderungen zuzufügen

PHP-Dateien, die sich im Extension-Verzeichnisextkey/Configuration/TCA/Overrides/ befinden, werdenausgeführt, direkt nachdem der TCA-Cache aufgebaut wurde. DieDateien dürfen nur Code enthalten, der das TCA manipuliert, wieaddTCAColumns oder addToAllTCATypes

TYPO3 CMS 7.0 - What’s New

Page 39: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Änderungen im System

MISC

Man kann nun auch SVG-Icons für eine Extension verwenden:ext_icon.svg

File Mounts können nun auch "read only" sein

TYPO3 CMS 7.0 - What’s New

Page 40: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Extbase & Fluid

Kapitel 4:

Extbase & Fluid

TYPO3 CMS 7.0 - What’s New

Page 41: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Extbase & Fluid

Fallback Pfade für Fluid Standalone View und FLUIDTEMPLATE

Sowohl Fluid Standalone View wie auch das TypoScript-ObjektFLUIDTEMPLATE können nun mit Fallback-Pfaden ausgerüstet werden.Verwendet man die alten Optionen (z.B. partialRootPath)zusammen mit den neuen, so wird die alte auf die erste Position (Index= 0) in der Fallback-Liste gestellt.page.10 = FLUIDTEMPLATEpage.10.file = EXT:sitedesign/Resources/Private/Templates/Main.htmlpage.10.partialRootPaths {

10 = EXT:sitedesign/Resources/Private/Partials20 = EXT:sitemodification/Resources/Private/Partials

}

TYPO3 CMS 7.0 - What’s New

Page 42: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Extbase & Fluid

Typolink ViewHelper

Es wurde ein Typolink-ViewHelper zugefügt, der beispielsweise Felderauswerten und darstellen kann, die über einen Link-Wizard im Backenderzeugt wurden:<f:link.typolink parameter="{link}" target="_blank" class="ico-class" title="some title"

additionalAttributes="{type:’button’}">

link enthält beispielsweise19 _blank - "testtitle with whitespace" &X=y

Ergebnis ist<a href="index.php?id=19&X=y" title="testtitle with whitespace" target="_blank" class="ico-class"

type="button">

Lediglich parameter wird benötigt, die anderen Parameter sindoptional

TYPO3 CMS 7.0 - What’s New

Page 43: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Extbase & Fluid

Data-Attribute in ViewHelpern

Alle ViewHelper, die Tags ausgeben, haben nun ein Data-Attributbekommen. Dafür wird per data ein Array übergeben. Die Schlüsselder Arrays werden dann als Attribut zusammengesetzt:data-$key="$value"<f:form.textfield data="{foo: ’bar’, baz: ’foos’}" />

Dies wird wie folgt gerendert:<input data-foo="bar" data-baz="foos" ...

TYPO3 CMS 7.0 - What’s New

Page 44: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Extbase & Fluid

Class tag values via Reflection

Der Extbase Reflection-Service kann nun Tags bzw. Annotationzurückliefern, die zu einer Klasse zugefügt wurden

Nehmen wir an, wir haben folgende Klasse:/*** @SomeClassAnnotation A value*/class Foo {}

Dann kann die Annotation nun wie folgt ermittelt werden:$service = new \TYPO3\CMS\Extbase\Reflection\ReflectionService();// Returns all tags and their values the specified class is tagged with$classValues = $service->getClassTagsValues(’Foo’);// Returns the values of the specified class tag$classValue = $service->getClassTagValue(’Foo’, ’SomeClassAnnotation’);

TYPO3 CMS 7.0 - What’s New

Page 45: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Veraltete und entfernte Funktionen

Kapitel 5:

Veraltete und entfernte Funktionen

TYPO3 CMS 7.0 - What’s New

Page 46: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Veraltete und entfernte Funktionen

Extensions müssen Namespaces verwenden

In TYPO3 7.0 wurde der Legacy-Layer entfernt, mit dem es möglich war,Extensions mit dem alten Namensschema (ohne Namespaces) zuverwenden

Der Legacy-Layer kann aber als Systemextension compatibility6wieder nachinstalliert werden

TYPO3 CMS 7.0 - What’s New

Page 47: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Veraltete und entfernte Funktionen

Folgende Funktionen wurden als veraltet markiert

In TYPO3 4.7 wurden zahlreiche JavaScript Methoden als "deprecated"(veraltet) erklärt und damit nun entfernt, beispielsweise

\TYPO3\CMS\Backend\Form\FormEngine->getSingleField_typeInput\TYPO3\CMS\Backend\Form\FormEngine->getSingleField_typeText\TYPO3\CMS\Core\Utility\GeneralUtility->quoted_printable\TYPO3\CMS\Core\Utility\GeneralUtility->encodeHeader

Alle Änderungen finden sich hier https://github.com/TYPO3/TYPO3.CMS/commit/2dff81b963e1b77c7f068f91ffde73914a18b0be

TYPO3 CMS 7.0 - What’s New

Page 48: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Veraltete und entfernte Funktionen

Entfernung veralteter JavaScript-Methoden im RTE

In TYPO3 4.7 wurden zahlreiche JavaScript Methoden als "deprecated"(veraltet) erklärt und damit nun entfernt, beispielsweise

HTMLArea.Editor.forceRedraw: use HTMLArea.Framework.doLayout insteadHTMLArea.Editor.convertNode: use HTMLArea.DOM.convertNode insteadHTMLArea.Editor.getBlockAncestors: use HTMLArea.DOM.getBlockAncestors

instead...

Eine genau Auflistung aller entfernten Methoden findet sich hierhttps://forge.typo3.org/projects/typo3cms-core/repository/revisions/9

ac03e383e4786e868f4b1d81893e84c4621abc8/entry/typo3/sysext/core/

Documentation/Changelog/master/Breaking-62291-

RTEDeprecatedJavaScriptMethodsRemoved.rst

TYPO3 CMS 7.0 - What’s New

Page 49: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Veraltete und entfernte Funktionen

MISC - Teil 1

Das TypoScript-Setting config.uniqueLinkVars wurde entfernt, da die dortigeFunktion nur per Default verwendet wird

Der ViewHelper \TYPO3\CMS\Documentation\ViewHelpers\Link\Action wurdeentfernt. Stattdessen kann man die ViewHelper f:be.buttons.icon oder f:uri.*verwenden

Die PageTSconfig-Option mod.web_list.alternateBgColors wurde entfernt

Die Funktion "SU mode" / "change to" in der Verwaltung der Backend-User wurdeentfernt

Die Funktion connectDB der Klasse \TYPO3\CMS\Frontend\Utility\EidUtilitywurde entfernt

Die Funktion int_from_ver der Klasse\TYPO3\CMS\Core\Utility\GeneralUtility wurde entfernt

Die Funktion isDisplayCondition der Klasse \TYPO3\CMS\Form\FormEnginewurde entfernt

TYPO3 CMS 7.0 - What’s New

Page 50: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Veraltete und entfernte Funktionen

MISC - Teil 2

Die Funktion getUniqueFields der Klasse\TYPO3\CMS\Core\DataHandling\DataHandler wurde entfernt

Die Funktion isSafeModeEnabled der Klasse\TYPO3\CMS\Core\Utility\PhpOptionsUtility wurde entfernt

Die Funktion registerSwiftMailer der Klasse \TYPO3\CMS\Core\Bootstrapwurde entfernt

Die Funktion loadTCA der Klasse \TYPO3\CMS\Core\Utility wurde entfernt

Die Klasse \TYPO3\CMS\Backend\Template\MediumDocumentTemplate wurdeentfernt

Die Funktion isLocalconfWritable der Klasse\TYPO3\CMS\Core\Utility\ExtensionManagementUtility wurde entfernt

Die Klasse \TYPO3\CMS\Extbase\Service\TypeHandlingService wurde entfernt

TYPO3 CMS 7.0 - What’s New

Page 51: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Veraltete und entfernte Funktionen

MISC - Teil 3

Der alte PropertyMapper (und die Option rewrittenPropertyMapper= 0) wurde entfernt

Die TypoScript-Conditions browser, version, system unduseragent wurden entfernt

TYPO3 CMS 7.0 - What’s New

Page 52: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Quellen und Autoren

Kapitel 6:

Quellen und Autoren

TYPO3 CMS 7.0 - What’s New

Page 53: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Quellen und Autoren

Quellennachweis

TYPO3 News:http://typo3.org/news

Release Notes:http://wiki.typo3.org/TYPO3_7.0

http://typo3.org/download/release-notes/typo3-7-0-release-notes/

NEWS.txt und ChangeLog

TYPO3 Git Repositories:https://git.typo3.org/TYPO3v4/Core.git

https://git.typo3.org/TYPO3v4/CoreProjects/MVC/extbase.git

https://git.typo3.org/TYPO3v4/CoreProjects/MVC/fluid.git

TYPO3 CMS 7.0 - What’s New

Page 54: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Quellen und Autoren

Quellennachweis

TYPO3 Bug-/Issuetracker:http://forge.typo3.org/projects/typo3v4-core/issues

Weitere Quellen:Roadmaphttps://typo3.org/typo3-cms/roadmap/

Release Strategyhttp://typo3.org/news/article/embrace-and-innovate-typo3-cms-7/

TYPO3 CMS 7.0 - What’s New

Page 55: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Quellen und Autoren

TYPO3 CMS What’s New Slides:Patrick Lobacher (Recherche, Informationsdoku und deutsche Version)

http://typo3.org/download/release-notes/whats-new

Lizensiert unter Creative Commons BY-NC-SA 3.0

TYPO3 CMS 7.0 - What’s New

Page 56: TYPO3 CMS 7.0 - What’s New - Patrick Lobacherlobacher.de/files/TYPO3-CMS-7.0-Die-Neuerungen-pluswerk.pdf · Einführung TYPO3 CMS Roadmap Folgende Roadmap wurde vom TYPO3 CMS Team

Quellen und Autoren

pluswerk

pluswerk ist eine Full Service Agentur für leidenschaftliche digitaleKommunikation mit 10 Standorten in Deutschland und über 130 Mitarbeitern

www.plus-werk.com | +49 69 260 99 70 50 | facebook.com/pluswerk

TYPO3 CMS 7.0 - What’s New