In the night from to tuesday April 10th the third sprint release of TYPO3 9 was released. Again many bugfixes and improvements hit the core. This blog post highlights fourteen features from this release for editors, admins, integrators and developers.
For editors
Create and copy (aka clone) a record
There is a new button next to the save button: “Duplicate”. Now it is possible to save an existing record, create a clone of it and open the clone for editing. This is especially useful, if you have to create many quite similar records in a row (f.e. be or fe user records).

Suggest Wizard: Search multiple terms
The suggest wizard in content elements was / is a great enhancement to find records in the backend. Until now is was limited to a single search term. With this feature, you can look up multiple terms using the “+” sign as a separator.
For more information see:
https://docs.typo3.org/typo3cms/extensions/core/latest/Changelog/9.2/Feature-61981-SearchAllFieldsInSuggestWizard.html
Sys_notes: Better performance and configurability
The performance of the system extension “sys_notes” was improved by removing the dependency to extbase and using plain php. Furthermore it is now possible to set the display position of each note at the end of the “General” tab.
For more information see:
https://docs.typo3.org/typo3cms/extensions/core/latest/Changelog/9.2/Feature-83965-MakePositionOfSysNotesConfigurable.html
For Integrators and Administrators
Introduce more Site Handling – Part III
The first steps for the site handling was done in the last sprint releases: 9.0 introduced the module “Site Management”. 9.1 brought the redirects functionality. This time the language and error handling is moves to the site management module, where you can edit the settings. These are saved in a new directory “<project-root>/config/sites/” (other than stated in the changelog file)
For more information see:
https://docs.typo3.org/typo3cms/extensions/core/latest/Changelog/9.2/Feature-84581-SiteHandling.html
Integrate Swift Mailer’s spool transport into TYPO3
The Swiftmailer library is part of TYPO3 since version 4.5. A newer feature in Swiftmailer is its possibility to spool emails and send them batched. This is especially useful, if you send many emails directly from that server and do not want to finish on a mail sender blacklist.
Another possibility is to use the memory to spool the mails. In that case, they are only send out, if the php process creating it finishes without any error or exception.
For more information see:
https://docs.typo3.org/typo3cms/extensions/core/latest/Changelog/9.2/Feature-76349-IntegrateSwiftMailersSpoolTransportIntoTYPO3.html
Show value of fields in debug mode
This one is really neat! As an integrator you probably inspected an HTML element in the TYPO3 BE to find out, in which DB column the value is saved and which value is saved there. This feature shows both values directly in the BE, if you are logged in as an admin user and the debug mode is enabled.
For more information see:
https://docs.typo3.org/typo3cms/extensions/core/latest/Changelog/9.2/Feature-83748-ShowValueOfFieldsInDebugMode.html
EXT:Scheduler: Create task group from add/edit task form
It is now possible to create new scheduler task groups, when creating a new task. Until now it was only possible via the list module on PID 0. This lowers the barrier to organize the scheduler task properly very much.
For more information see:
https://docs.typo3.org/typo3cms/extensions/core/latest/Changelog/9.2/Feature-69187-EXTSchedulerCreateTaskGroupFromAddeditTaskForm.html
Progressive Images
Progressive images are images, which provide a low-res version at the beginning and then afterwards enhance the image step by step. All data is contained in on file. These file can be automatically created using ImageMagick or GraphiksMagick.
It is enable in the install tool with the new option $GLOBALS['TYPO3_CONF_VARS'][GFX][processor_interlace]
. Possible values are None, Plane, Line and Partition.
SmashingMag has an nice explanation of what “Progressive Rendering” in images is, For more information see: https://docs.typo3.org/typo3cms/extensions/core/latest/Changelog/9.2/Feature-48013-AddSupportForProgressiveImages.html
Default reply-to e-mail address for notification mails
Two new options where added to the install tool:
- $GLOBALS[‘TYPO3_CONF_VARS’][‘MAIL’][‘defaultMailReplyToAddress’]
- $GLOBALS[‘TYPO3_CONF_VARS’][‘MAIL’][‘defaultMailReplyToName’]
Now it is possible to set a system wide reply-to name and address on an installation.
For more information see:
https://docs.typo3.org/typo3cms/extensions/core/latest/Changelog/9.2/Feature-78332-AllowSettingADefaultReplyTo-email-addressForNotification-mails.html
Retrieve session data in TS conditions
Formerly it was necessary to access the sessions data in TypoScript conditions via the feuser object. This is now replaced by a direct access to the session data, f.e. [globalVar = session:foo|bar = 1234567]
. The old way was deprecated and will be removed in TYPO3 V10.
For more information see:
https://docs.typo3.org/typo3cms/extensions/core/latest/Changelog/9.2/Feature-83506-RetrieveSessionDataInTSConditions.html
https://docs.typo3.org/typo3cms/extensions/core/latest/Changelog/9.2/Deprecation-83506-DeprecateFeUserSesDataCondition.html
Reorder processing of TCA Select items
The TCA select items can be rearranged via pageTSconfig and itemsProcFunc. Lately the result of itemsProcFunc took priority over the changes in TCA. This order was changed and pageTSconfig has higher priority than itemsProcFunc.
For developers
New render types for checkboxes
In the backend there is a new render type for checkboxes: toggle switches.
(I tweaked the BE TCA to make this screenshot. So don’t be puzzled, if your installation shows the classic checkboxes).
For more information see:
https://docs.typo3.org/typo3cms/extensions/core/latest/Changelog/9.2/Feature-83556-AddToggleSwitchesToFormEngine.html
New AdminPanel module API
The AdminPanel was moved to a separate extension and got an API to make it extensible. Using this API makes it a lot easier to provide new functionality in the AdminPanel, than it was possible with the hook until now.
For more information see:
https://docs.typo3.org/typo3cms/extensions/core/latest/Changelog/9.2/Feature-84045-NewAdminPanelModuleAPI.html
https://docs.typo3.org/typo3cms/extensions/core/latest/Changelog/9.2/Deprecation-84045-AdminPanelHookDeprecated.html
PSR enhancements
Already in the last versions TYPO3 embraced and implemented more and more standards to be compatible outside the own eco-system. This time the PSR-15 HTTP middleware hit the core. Also the PSR-7 support was extended.
For more information on PSR-15 HTTP middleware see:
https://docs.typo3.org/typo3cms/extensions/core/latest/Changelog/9.2/Feature-83725-SupportForPSR-15HTTPMiddlewares.html
For more information on the extended support of PSR-7 server requests see:
https://docs.typo3.org/typo3cms/extensions/core/latest/Changelog/9.2/Feature-83736-ExtendedPSR-7RequestsWithTYPO3ServerParameters.html
Conclusion
Again many new features and fixes made it into the TYPO3 core. It is really worth to try it out. Maybe it is already the version to use, when you start new projects, which will go live in autumn when the LTS version is out.
Credits
I want to thank my supporters, who make this blog post possible. In this blog post, I want say “Thank you” to
for becoming a bronze sponsor.
If you also appreciate my blog and want to support me, you can say “Thank You!”. Find out the possibilities here:
I found the blog post image on Unsplash. It was published by @danist07 under the Unsplash License. It was modified by myself using pablo on buffer.