Content Blocks in TYPO3 v13 LTS — Repository Moved to FriendsOfTYPO3

Categories: Development, Community, TYPO3 CMS Created by André Kraus
Six people standing in front of a wall with a TYPO3 logo. They're smiling and casually dressed, with the men in jeans and various tops. The background features an orange logo and floor, and the group seems relaxed and friendly.
TYPO3 v13 LTS brings exciting updates to the Content Blocks ecosystem, including its first stable release and significant improvements in usability and development workflows. The Content Types Team explains the key changes, migration guidance, and future developments for Content Blocks.

Content Blocks 1.0.0: A Stable Release and New Home

With the release of TYPO3 version 13.4.0 LTS, we’ve introduced the first stable version of Content Blocks (version 1.0.0). Content Blocks has now transitioned to the FriendsOfTYPO3 namespace, which is important for those installing Content Blocks via Composer.

To install, you’ll now use:

composer req friendsoftypo3/content-blocks

This move brings more contributors and improved support, ensuring ongoing development until all features can possibly be integrated into TYPO3’s core. In the meantime, the standalone extension will continue to be maintained with its full feature set.

You can find detailed change logs on the release page.

Parts of Content Blocks in the Core

The exchange with the Core team was very fruitful. Many challenges that were present for any content-defining framework were tackled on a low level. The results are new APIs in TYPO3 Core. As an example there is now a Schema API to read information about data structures and a generic RelationResolver that you can even use as a DataProcessor (record-transformation) that resolves data for use in templates.

Based on this exchange, we have been able to encapsulate the standalone parts and work on a reliable solution. We’ve also formed upcoming plans to implement our vision.

Structure Changes and Upgrade Wizard From v12 to v13

With the release of Content Blocks 1.0.0, several underlying changes have been made that require migration. This includes modifications to the folder structure and the usage of ViewHelpers. To simplify this migration, we’ve released an Upgrade Wizard that automates most of the process, helping you smoothly transition from v12 to v13.

The main changes include:

  • Folder structure: Content Blocks now have a more standardized folder layout, aligning with TYPO3 best practices. Specific files may have moved, so it’s essential to review any custom paths.
  • ViewHelper adjustments: ViewHelpers in templates have been updated to support new features and streamline functionality, so existing custom ViewHelpers may need adjustments.
  • Breaking changes and deprecated methods: The upgrade also phases out deprecated methods and includes breaking changes that may impact custom implementations.

For a complete guide on all required steps and changes, please consult the Content Blocks v1.0.0 migration documentation. This documentation provides detailed instructions and examples to help ensure a smooth upgrade.

Upcoming JSON Schema for Content Blocks Configuration

We’re developing a JSON Schema for Content Blocks, which will soon be available on schemastore.org. This schema will enhance your development workflow by enabling IDE autocompletion and validation for Content Blocks’ config.yaml files. With the schema in place, your IDE can help you write configurations faster and with fewer errors, highlighting potential issues directly as you code.

Currently, you can access and test the schema on GitHub: Content Blocks JSON Schema. Here, you’ll find documentation and examples that demonstrate how the schema can streamline your Content Block configuration process.

What’s Next?

The main focus in the coming period will be work on the GUI, maintaining the extension and fixing possible bugs.

We still encourage you to test the extension via the TYPO3 Extension Repository or Packagist and give us your opinions and feedback! Open issues on GitHub, contact us on Slack via our channel #cig-structuredcontent or send us your feedback in other ways! We appreciate any help and support!

Keep in Touch

Thank you for your great feedback so far! Please keep testing and sharing your thoughts with us! You can reach us at #cig-structuredcontent on Slack, or join our calls on the 1st and 3rd Monday of the month at 20:00 CET (19:00 UTC).

The Content Types Team

Additional contributors for this article
  • Copy Editor : Felicity Brand
  • Content Publisher : Mathias Bolt Lesniak