Author
vantram
View
250
Download
4
Embed Size (px)
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
Einführung
Einführung
(Die Fakten)
TYPO3 CMS 7.0 - What’s New
Einführung
TYPO3 CMS 7.0: Die Fakten
Veröffentlichungsdatum: 2. Dezember 2014Entwicklungs- und Veröffentlichungszeitplan:
TYPO3 CMS 7.0 - What’s New
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
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
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
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
BackendUI
Kapitel 1:
Backend User Interface
TYPO3 CMS 7.0 - What’s New
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
BackendUI
Look & Feel
TYPO3 CMS 7.0 - What’s New
BackendUI
Look & Feel
TYPO3 CMS 7.0 - What’s New
BackendUI
Look & Feel
TYPO3 CMS 7.0 - What’s New
BackendUI
Login
Neues Backend Login unter http://www.domain.com/typo3
TYPO3 CMS 7.0 - What’s New
BackendUI
Obere Leiste
Die obere Leiste wurde überarbeitet
TYPO3 CMS 7.0 - What’s New
BackendUI
List Module
Das List Module wurde graphisch komplett überarbeitetEbenfalls angepasst wurde das Clipboard
TYPO3 CMS 7.0 - What’s New
BackendUI
Frischer Table-Stil
Das Tabellen-Layout wurde aufgefrischt
TYPO3 CMS 7.0 - What’s New
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
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
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
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
TSconfig & TypoScript
Kapitel 2:
TSconfig & TypoScript
TYPO3 CMS 7.0 - What’s New
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
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
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
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
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
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
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
Änderungen im System
Kapitel 3:
Änderungen im System
TYPO3 CMS 7.0 - What’s New
Ä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
Ä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
Ä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
Ä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
Ä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
Ä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
Ä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
Ä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
Ä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
Ä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
Extbase & Fluid
Kapitel 4:
Extbase & Fluid
TYPO3 CMS 7.0 - What’s New
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
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
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
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
Veraltete und entfernte Funktionen
Kapitel 5:
Veraltete und entfernte Funktionen
TYPO3 CMS 7.0 - What’s New
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
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
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
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
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
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
Quellen und Autoren
Kapitel 6:
Quellen und Autoren
TYPO3 CMS 7.0 - What’s New
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
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
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
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