Releases: FriendsOfTYPO3/content-blocks
1.0.4
1.0.3
1.0.2
Full Changelog: 1.0.1...1.0.2
1.0.1
1.0.0
Ride the wave with Content Blocks in TYPO3 v13 LTS 🌊 🏄♀️
After 2.5 years since I joined forces with the Structured Content Initiative in TYPO3 Camp Mitteldeutschland in Dresden 2022 we finally can proudly announce Content Blocks version 1.0.0 for TYPO3 v13 LTS (yeah!) 🎉 🎉 🎉
An incredible amount of work went into this project. This wouldn't have been possible without all of the people trying out early versions and give us valuable feedback. Many thanks for your trust! Your faith in us will now be rewarded with a smooth transition to the now stable version.
Content Blocks v1.0.0
New home for Content Blocks
The most important change for you is the new vendor name of this package. The project moved to https://github.com/FriendsOfTYPO3 and thereby can now be installed by the name friendsoftypo3/content-blocks
. It will now be further maintained by us, the Content Types team, but also by the Core team.
Breaking changes
New AssetPathViewHelper
cd4e1d2 [!!!][TASK] Introduce AssetPathViewHelper
We replaced the custom AssetViewHelpers with a new AssetPathViewHelper. Now you can use the Core AssetViewHelpers and only use the custom ViewHelpers to build the path to your asset.
Before
<cb:asset.css identifier="cbAccordionCssBackend" file="EditorPreview.css"/>
After
<f:asset.css identifier="cbAccordionCssBackend" href="{cb:assetPath()}/EditorPreview.css"/>
New LanguagePathViewHelper
ce8d8af [!!!][TASK] Replace custom TranslateViewHelper with LanguagePathViewHelper
We replaced the custom TranslateViewHelper with a LanguagePathViewHelper that is used to build the translation key.
Before
<cb:translate key="readmore"/>
After
<f:translate key="{cb:languagePath()}:readmore"/>
Core integration: RecordObject
e2c003c [!!!][TASK] Integrate Record object into ContentBlockData
Feature: #103783 - RecordTransformation Data Processor
One of the integrations into the Core include the new RecordObject feature. The switch caused some object accessors to change in Fluid.
{data._raw}
➡️{data.rawRecord}
{data.typeName}
➡️{data.recordType}
{data.tableName}
➡️{data.mainType}
{data.creationDate}
➡️{data.systemProperties.createdAt}
{data.updateDate}
➡️{data.systemProperties.lastUpdatedAt}
{data.localizedUid}
➡️{data.computedProperties.localizedUid}
Core integration: RelationResolver
dc1730d [!!!][TASK] Use Core RelationResolver (#225)
Feature: #103581 - Automatically transform TCA field values for record objects
The relation resolving / expansion is now completely backed up by the Core. This lifts a heavy weight from Content Blocks as it is one of the most complex and important features. The switch shouldn't be too breaking. Only known hard changes are for type Folder
. Instead of File
objects, Folder
objects are now returned. These are resolved recursively by default, so the option recursive
is now obsolete.
Checking for existing type "Link" before:
<f:if condition="{data.link_field}">
<!-- -->
</f:if>
Checking for existing "Link" after:
<f:if condition="{data.link_field.url}">
<!-- -->
</f:if>
New way of accessing files from type "Folder":
<f:for each="{data.folder}" as="folder">
<f:for each="{folder.files}" as="image">
<f:image image="{item}" />
</f:for>
</f:for>
New folder structure
d96cbc5 [!!!][TASK] New Content Block folder structure (#248)
In order to align with modern guidelines, the Core strives to lift arbitrary rules for file names like UpperCamelCase for Fluid templates. Content Blocks now uses lowercase file names for all its pre-defined folders and files. Also, some files have been renamed. The new structure looks like this:
├── assets
│ └── icon.svg
├── language
│ └── labels.xlf
├── templates
| ├── partials
| | └── Component.html
│ ├── backend-preview.html
│ └── frontend.html
└── config.yaml
Partials and Layouts still have to be UpperCamelCase due to Fluid limitations.
Content Blocks has an upgrade wizard for easy migration:
typo3 upgrade:run contentBlocksFolderStructureMigration
Custom Field Type registration
3d01a7d [!!!][TASK] Use PHP attribute to register and configure Field Types (#255)
Field Types are now registered with PHP attributes. Have a look at the documentation to see how your class needs to be adjusted.
Features
There are only a few new features, as the focus was on integrating crucial parts into the TYPO3 Core.
065409a [FEATURE] Field type "Pass"
4351148 [FEATURE] Previews for Record Types
480b246 [FEATURE] Allow to define custom icon for is site root state
Thank you
Special thanks to @bmack, @o-ba and @bnf from the Core team who pushed the Core integration forward.
Huge thanks to my team @krausandre, @ManuS3009, @PKuhlmay, @jonaseberle and @filippos-gmk who are always there for bi-weekly calls and hear out my crazy ideas.
Honorable thanks to @typecat. Hey Liddy, we did it! Thanks so much for your dedicated effort in the past to spread Content Blocks into the world.
Thanks to all contributors, testers and early adopters of Content Blocks.
Nikita Hovratov - Content Blocks developer
0.7.18
Full Changelog: 0.7.17...0.7.18
0.8.2
Full Changelog: 0.8.1...0.8.2
0.7.17
Full Changelog: 0.7.16...0.7.17
0.8.1
Full Changelog: 0.8.0...0.8.1
0.7.16
Full Changelog: 0.7.15...0.7.16