Slide 1

Slide 1 text

TYPO3 v13 The road to LTS typo3.org Inspiring people to share WHAT’S NEW & NEW APIS

Slide 2

Slide 2 text

LUISA FAßBENDER @luisasofie_xoxo [email protected] ■ Senior Success Managerin @TYPO3 GmbH ■ TYPO3 Marketing Team Lead ■ M. Sc. Marketing & Communications

Slide 3

Slide 3 text

OLIVER BARTSCH @_obartsch [email protected] ▪ Arbeitet @ b13 ▪ Core-Entwicklung & Kundenprojekte ▪ TYPO3 Core Team seit 2021 ▪ TYPO3 Ecosystem & Extensions

Slide 4

Slide 4 text

Almost there – The road to v13 LTS

Slide 5

Slide 5 text

TYPO3 v13 – The Road To LTS ▪ Five releases in under 10 months. Release Date Version Features 30th January 2024 13.0 – The Ocean’s Calling Breaking changes and new system requirements 23rd April 2024 13.1 – The Surfer’s Starterkit Reusable components for creating new sites 2nd July 2024 13.2 – Ready. Set. Ride. Content blocks and new APIs for integrations 17th September 2024 13.3 – Prepare for the Fun Feature Freeze 15th October 2024 13.4 – Ride the Wave LTS Release

Slide 6

Slide 6 text

UP TO SEVEN YEARS OF MAINTENANCE AND SUPPORT Free TYPO3 community support for three years: ● 1.5 years full regular maintenance ● 1.5 years priority bug fixing with security fixes and critical updates. Paid Extended Long-Term Support (ELTS) for TYPO3 v13 LTS available until 31st October 2031.* * 4th year of ELTS only available for TYPO3 Partners

Slide 7

Slide 7 text

Benni Mack, TYPO3 Core Team Lead “With v13 we aim to make repetitive tasks and the day-to-day work of integrators and admins more enjoyable.”

Slide 8

Slide 8 text

The two challenges to solve Improving Backend User Experience Streamlining Recurring Actions

Slide 9

Slide 9 text

349 151 2.071 https://github.com/TYPO3/TYPO3.CMS/graphs/contributors DAYS CONTRIBUTORS COMMITS

Slide 10

Slide 10 text

19.424 333.922 262.158 https://github.com/TYPO3/TYPO3.CMS/graphs/contributors FILES CHANGED LOC* REMOVED LOC* ADDED

Slide 11

Slide 11 text

Everything you need to know before LTS!

Slide 12

Slide 12 text

System Requirements & Dependencies PHP v8.2 and Symfony 7 ▪ PHP version 8.2 is the minimum requirement to run TYPO3 v13. This is just a small step from version 8.1, which TYPO3 v12 requires, and lets us leverage Symfony version 7, released in November 2023. ▪ PHP version 8.2 will receive security updates for the next two years until December 2025.

Slide 13

Slide 13 text

System Requirements & Dependencies Database Engine ▪ Thanks to the database abstraction layer Doctrine, TYPO3 supports a range of database servers and engines. TYPO3 v13 will depend on Doctrine DBAL version 4. ▪ TYPO3 v13 will support the following database engines: • MySQL version 8.0.17 or higher • MariaDB version 10.4.3 or higher • PostgreSQL version 10.0 or higher • SQLite version 3.8.3 or higher

Slide 14

Slide 14 text

Additional Information Deprecations ▪ With the release of TYPO3 v13.0, all deprecations from TYPO3 v12 will finally be removed.

Slide 15

Slide 15 text

What’s new in TYPO3 v13?

Slide 16

Slide 16 text

73 Features

Slide 17

Slide 17 text

DON’T GET HOOKED LISTEN TO EVENTS

Slide 18

Slide 18 text

> 26 PSR-14 EVENTS

Slide 19

Slide 19 text

ModifyRecordsAfterFetchingContentEvent ModifyUrlForCanonicalTagEvent ModifyRecordOverlayIconIdentifierEvent BeforeLoadedPageTsConfigEvent BeforeLoadedUserTsConfigEvent AfterUserLoggedInEvent BeforeTcaOverridesEvent AfterContentObjectRendererInitializedEvent AfterGetDataResolvedEvent ModifyImageSourceCollectionEvent BeforeStdWrapFunctionsInitializedEvent AfterStdWrapFunctionsInitializedEvent BeforeStdWrapFunctionsExecutedEvent AfterStdWrapFunctionsExecutedEvent AfterImageResourceResolvedEvent ModifyDefaultConstraintsForDatabaseQueryEvent BeforePageIsRetrievedEvent BeforeTypoLinkEncodedEvent AfterTypoLinkDecodedEvent BeforeStdWrapContentStoredInCacheEvent AfterLinkResolvedByStringRepresentationEvent AfterFormDefinitionLoadedEvent BeforePageCacheIdentifierIsHashedEvent ModifyTypoScriptConfigEvent AfterTypoScriptDeterminedEvent PackageInitializationEvent …

Slide 20

Slide 20 text

NATIVE PHP ATTRIBUTES

Slide 21

Slide 21 text

NATIVE PHP ENUMS

Slide 22

Slide 22 text

AUTO CREATION OF DATABASE FIELDS

Slide 23

Slide 23 text

■ category ■ datetime ■ slug ■ json ■ uuid ■ file ■ email ■ check ■ folder ■ imageManipulation ■ number ■ language ■ group ■ flex ■ text ■ password ■ color ■ radio ■ link ■ inline ■ select TCA Types

Slide 24

Slide 24 text

CacheInstruction API

Slide 25

Slide 25 text

PageInformation API

Slide 26

Slide 26 text

HashService API

Slide 27

Slide 27 text

Hotkey API

Slide 28

Slide 28 text

Right-to-left Backend UI

Slide 29

Slide 29 text

Right-to-left Backend UI It has always been a key objective of TYPO3 to make the user interface accessible to as many users as possible. ▪ more than 60 languages supported by default Beyond languages, different writing systems are also a key factor when developing localizable backend interfaces.

Slide 30

Slide 30 text

Right-to-left Backend UI With the release of v13.0, right-to-left text directions are now fully supported. This includes: ▪ backend layout ▪ tables ▪ content areas ▪ page tree ▪ menus

Slide 31

Slide 31 text

Right-to-left Backend UI

Slide 32

Slide 32 text

Right-to-left Backend UI Relevant and now supported Right-to-left languages include: ▪ Arabic ▪ Hebrew ▪ Kurdish (Sorani) ▪ Persian / Farsi ▪ Urdu ▪ Kashmiri ▪ Pashto A huge step towards making TYPO3 even more accessible.

Slide 33

Slide 33 text

IMAGE RENDERING

Slide 34

Slide 34 text

Image Rendering Image Rendering ▪ By default, WebP images can now be generated, as TYPO3's configuration setting has been extended with .webp ▪ The Install Tool / Environment Module displays if support for generating WebP image files is possible ▪ In addition, a new report in the Reports module of TYPO3 Backend shows if TYPO3 is properly configured for generating WebP image files ▪ Native support for SVG cropping

Slide 35

Slide 35 text

REACTIVE PAGETREE

Slide 36

Slide 36 text

Reactive PageTree Reactive PageTree ▪ Built on current web standards - no longer limited to SVG features ▪ Usage of HTML, CSS, web components and native Drag&Drop API Features ▪ Reactive rendering ▪ Native Drag & Drop ▪ Improved API endpoints ▪ Personalisation: LTR & RTL support, Light & Dark Mode ▪ Improved Performance: Usage of local storage, visible nodes in DOM

Slide 37

Slide 37 text

Reactive PageTree Status Information ▪ Information for each node ▪ Contain: label, icon, severity, priority ▪ Color indication based on severity ▪ Manipulation via PSR-14 AfterPageTreeItemsPreparedEvent ▪ Used for workspace statuses

Slide 38

Slide 38 text

Reactive PageTree Labels ▪ Labels for each node ▪ Contain: label, color, priority ▪ Replaces previous “pageTree.backgroundColor” user TSconfig “options.pageTree.label.” ▪ Multiple Labels for a single node ▪ Manipulation via PSR-14 AfterPageTreeItemsPreparedEvent

Slide 39

Slide 39 text

No content

Slide 40

Slide 40 text

CUSTOMIZATION

Slide 41

Slide 41 text

Configurable Backend Entry Points

Slide 42

Slide 42 text

Customization Configurable backend entry points ▪ $GLOBALS['TYPO3_CONF_VARS']['BE']['entryPoint'] ▪ Requires server configuration adjustments ▪ Using a subdomain $GLOBALS['TYPO3_CONF_VARS']['SYS']['cookieDomain'] has to be changed ▪ All requests target /index.php instead of /typo3/index.php (legacy) ▪ Legacy Entrypoint will be removed in v14

Slide 43

Slide 43 text

PAGEVIEW ContentObject

Slide 44

Slide 44 text

Customization PAGEVIEW ContentObject Powerful replacement for FLUIDTEMPLATE Goal: Rendering of Frontend Pages with auto resolving of template paths, mapping of Backend Layouts and providing important variables (site, site language, page information, TypoScript settings) out of the box.

Slide 45

Slide 45 text

Site Sets API

Slide 46

Slide 46 text

Customization New in v13.1 – Feature: Site Sets Site sets ship parts of site configuration as composable pieces. They are intended to deliver site settings, TypoScript, TSConfig and reference enabled content blocks for the scope of a site. Allow code/configuration sharing between sites

Slide 47

Slide 47 text

TYPO3 v12 TYPO3 v13 Customization

Slide 48

Slide 48 text

Sets are composable of subsets. Customization

Slide 49

Slide 49 text

Customization

Slide 50

Slide 50 text

Configuration Reference site set in site configuration as dependency Customization

Slide 51

Slide 51 text

Site Sets – Settings ▪ Site Settings via settings.yaml as in v12 ▪ New: settings.definitions.yaml ▪ Settings have types ▪ Settings have defaults ▪ Defined settings are always set and will always provide the correct type. Invalid configuration will be ignored. Customization

Slide 52

Slide 52 text

Definition Usage Customization

Slide 53

Slide 53 text

Presets

Slide 54

Slide 54 text

Presets Formerly known as „themes“, TYPO3 v13.4 LTS will include several presets in the form of extensions. Those presets: ▪ Contain ready-to-use frontend outputs, but also predefined pages, content & backend users. ▪ Are individually customizable through agencies & users. The first presets will be created during the TYPO3 Surfcamp as another way of promoting and including young talents. Customization

Slide 55

Slide 55 text

Presets @TYPO3 Surfcamp ▪ Public Sector Intranet ▪ Landing Pages ▪ Restaurant Website ▪ Football Club Website ▪ Portfolio Website ▪ Corporate Website Presets will be available as extensions and come with… Customization

Slide 56

Slide 56 text

Frontend Output Settings Pages & Content Presets Customization

Slide 57

Slide 57 text

Exkurs: TYPO3 Surfcamp ▪ 7 to 14 April 2024, Fuerteventura ▪ Young Talent Support & Community-Building ▪ 6 cross functional teams ▪ Mentoring through Core Team and veterans ▪ 30 Attendees between 18-35: • Backend, Frontend, Integration, Marketing, PM

Slide 58

Slide 58 text

Exkurs: TYPO3 Surfcamp

Slide 59

Slide 59 text

Content Blocks

Slide 60

Slide 60 text

Customization Content Blocks ▪ An initiative by the Content Types Team ▪ Content Blocks provides a new API to create custom Content Types like Content Elements, Page Types or generic Record Types ▪ It is already available for testing as an extension in v12 and will become a new system extension in the v13.2 release Goal: Offering a centrally maintained, easy-to-use solution for generating individual content types.

Slide 61

Slide 61 text

Customization Content Blocks ▪ First Feedback for the Content Blocks in production: „The usage of Content Blocks has entirely changed our workflow. Where Integrators were desperately needed before, now even frontend developers with very little TYPO3 experience can create solutions really quickly. Moreover, the created content blocks are even reusable throughout multiple different projects!“ Sebastian Verweyen – jwied*

Slide 62

Slide 62 text

Creation Wizards

Slide 63

Slide 63 text

Customization Creation Wizards After being introduced beforehand for the creation of content elements, the creation wizard now also spans the creation of new records like pages and site roots. Goal: Help editors create new pages / site roots with predefined required fields in a few simple steps – streamlining the creation process.

Slide 64

Slide 64 text

Customization

Slide 65

Slide 65 text

Customization

Slide 66

Slide 66 text

No content

Slide 67

Slide 67 text

Customization CMS Health Goal: Provide standardized way for CMS and services to expose their health status, making it easier for monitoring tools, load balancers, and other infrastructure components to understand and react to the health of these services.

Slide 68

Slide 68 text

Customization CMS Health TYPO3 integration of the CMS Health Check RFC. Registration of a new reaction HealthCheckReaction, allowing administrators to generate various health check reports by selecting checks to be executed and included in the corresponding report.

Slide 69

Slide 69 text

ADDITIONAL GEMS

Slide 70

Slide 70 text

Additional Gems You can also look forward to: ▪ Improvements and trouble shooting for indexed_search ▪ Optimizations in Redirects Backend Module ▪ Improvements and simplifications of workspaces ▪ Ongoing replacement of hooks with events ▪ Record-based content resolving

Slide 71

Slide 71 text

MANY MORE NEW AND EXCITING FEATURES ARE COMING YOUR WAY!

Slide 72

Slide 72 text

TIPS FROM THE CORE TEAM & MERGERS

Slide 73

Slide 73 text

Tips from the Core Team & Mergers Preparation is key! ▪ Check out the newest developments and changes now, so that you‘ll be prepared for everything, v13 LTS has to offer! ▪ Browse through the changelog, test out the sprint releases and check for bugs to help us find everything.

Slide 74

Slide 74 text

Tips from the Core Team & Mergers Get your extensions ready! ▪ The LTS release is just a few months away – start your developments on your extensions now and make them compatible around October!

Slide 75

Slide 75 text

Tips from the Core Team & Mergers Keep the feature freeze deadline in mind! ▪ TYPO3 v13 LTS will be feature-complete on 17 September 2024 ▪ So if you‘re desperately missing a feature – now is your time to get things going!

Slide 76

Slide 76 text

Practical Insights

Slide 77

Slide 77 text

A look into usage statistics

Slide 78

Slide 78 text

Current usage statistics of TYPO3 versions

Slide 79

Slide 79 text

Current usage statistics of TYPO3 versions (10th September 2023)

Slide 80

Slide 80 text

Current usage statistics of TYPO3 versions (8th January 2024) (10th September 2023)

Slide 81

Slide 81 text

Usage Statistics: Trends & Observations ▪ Adoption rate of Version 12.4 is still really low ▪ TYPO3 Version 11.5 LTS is currently the most used version ▪ Still a lot of unsupported, outdated installations out there • Almost 30% run on Version 7.6 or older

Slide 82

Slide 82 text

Usage Statistics: Trends & Observations ▪ Quite a few sites updated from outdated / older versions to v11.5 LTS • Gain of ca. 2,5 % ▪ Unsupported TYPO3 Versions dropped by 2,5 % • ca. 3,5 % growth in supported LTS versions • ca. 2,5 % decrease in ELTS supported versions ▪ Last ELTS cycle for v8.7 ended on March 31st 2024 • This might result in a significant increase in unsupported versions

Slide 83

Slide 83 text

ARE YOU READY FOR TYPO3 V13? Check out the sprint releases and help us prepare for v13 LTS!

Slide 84

Slide 84 text

GET.TYPO3.ORG