Skip to content

Releases: FriendsOfTYPO3/content-blocks

0.6.4

06 Mar 19:16

Choose a tag to compare

0.6.3

05 Mar 13:46

Choose a tag to compare

0.6.2

27 Feb 20:27

Choose a tag to compare

What's Changed

Full Changelog: https://github.com/nhovratov/content-blocks/compare/0.6.1...0.6.2

0.6.1

26 Feb 11:07

Choose a tag to compare

0.6.0

26 Feb 07:22

Choose a tag to compare

Lightning fast Content Blocks ⚑

This version requires the minimum TYPO3 version 12.4.11

This release includes a breaking change πŸ’₯ :

Content Blocks started as a new realm on top of TYPO3, which only new about its own defined Content Types. This led to confusion among users, who expected seamless integration between natively defined types and Content Blocks. In the first step, native types are now also converted to the so called ContentBlockData object. This is the object, which is available in the {data} variable and holds the {data._raw} and {data._processed} data of the current database row. This was e.g. needed in order to use Nested Content Elements in a unified way. If you used native types as nested child elements (or native page types), adjustments to Fluid might be necessary.

More caches for Content Blocks

More dedicated caches were added for each aspect of Content Blocks. To create a new Content Type basically three steps are happening:

  1. Look for defined Content Blocks in each extension and parse the YAML -> first level PHP cache of the raw yaml + separate Basics cache
  2. Compilation of Content Blocks to the internal data structure called TableDefinitionCollection -> second level PHP cache of the object state.
  3. Code generation (TypoScript, TsConfig, Icons, ...) -> third level cache. Each type of generated code has now a dedicated cache entry.

All these caches are stored in the group system. Flushing this cache means all these steps have to be repeated. The first step is the most expensive as it includes file system lookups and YAML parsing.

Backend Previews: In general, the backend view of TYPO3 is not completely cached. Expensive database lookups are done on every click in the backend. So it was for automatic relation resolving for Content Block data. If you had a preview for your slider or nested content, then this could take a while in case you had plenty of elements on a page. This result is now also cached and will only be resolved again when the Content Element changes. In my tests this approximately cut the loading time in half.

Nested Content part 2

NestedContentPreview

In the last version we introduced the possibility to define Nested Content and render it in the frontend. Now it is also possible to automatically create backend previews. These previews reuse the native grid templates so it looks and feels as if it was natively in TYPO3:

 <f:render partial="PageLayout/Grid" arguments="{data: data, identifier: 'tabs_item'}"/>

Thanks to @DanielSiepmann for pioneering this feature.

Two new guides

A guide for the migration from Mask to Content Blocks is now available: https://docs.typo3.org/p/contentblocks/content-blocks/main/en-us/Migrations/Mask/Index.html

A guide on how to add custom groups is added: https://docs.typo3.org/p/contentblocks/content-blocks/main/en-us/Guides/AddingNewGroups/Index.html

Roadmap

As TYPO3 v13 approaches we needed a plan for the transition into the Core. This release is the first milestone of the roadmap. There will be one more version before the port for the Core patch begins. During this time, there will be no more features. After successfull merge into the Core (which is expected), we declare Content Blocks as stable version v1.0.0. The v13 and v12 version will be kept in sync from there on.

Milestone Date
Content Blocks v0.6 26.02
Content Blocks v0.7 01.04
Core patch 01.04 - 23.04
TYPO3 v13.1 23.04
Review period 23.04 - 14.06
Patch merged latest 01.07
TYPO3 v13.2 02.07
Content Blocks v1.0.0 02.07

What's Changed

  • [!!!][FEATURE] Transform Core Content Types to ContentBlockData objects (#119)
  • [FEATURE] Backend Previews for Nested Content
  • [FEATURE] Add caches for editor preview database operations
  • [FEATURE] Fieldtype Language (#123) - thanks to @PKuhlmay
  • [FEATURE] Support for mixed relations in type Relation (#120)
  • [FEATURE] Custom properties for Select, Checkbox and Radio types (#131)
  • [BUGFIX] Allow empty items for FlexForm Select (#131)
  • [DOCS] Document the migration path for Mask
  • [DOCS] Add guide on how to add custom groups

And like always some bugfixes, documentation improvements and much much code refactoring along the way.

Nikita Hovratov - Content Blocks developer

0.5.2

03 Feb 16:20

Choose a tag to compare

[BUGFIX] Lift hard requirement for labelField type (#112)
[BUGFIX] Add more foreign_* option as non-overridable (#110)
[BUGFIX] Allow integers as item labels and allow to omit them (#108, #111)
[BUGFIX] Expand searchable fields

0.5.1

31 Jan 09:39

Choose a tag to compare

[BUGFIX] Prevent PHP warning "iteration on nullable"

0.5.0

31 Jan 08:10

Choose a tag to compare

Reach for the Content Blocks

This release in non-breaking πŸ‘Œ

This release comes with the feature of basic nested Content Elements πŸŽ‰ special thanks to @DanielSiepmann πŸ‘
Also, a guide was added on how to use the classic Fluid Styled Content Layouts.

The main focus of this sprint release was to harden the API and to provide small missing features like missing field types (special thanks to @PKuhlmay), localization of select items or the saveAndClose option.

Special thanks to @garvinhicking for digging into identifier replacement for displayCond πŸ‘

What's Changed

  • [FEATURE] Add first basic support for nested content elements
  • [FEATURE] Allow to override first Content Element tab
  • [FEATURE] Integration with Fluid Styled Content
  • [FEATURE] Add Header palette Basic
  • [FEATURE] Identifier replacement for displayCond
  • [FEATURE] cropVariants shortcut for type File (#83)
  • [FEATURE] Add nonce attribute for CSP to css and script viewhelpers (#80)
  • [FEATURE] Add title, slug and nav_title for processed Page Types
  • [FEATURE] Add type Json (#78)
  • [FEATURE] Add type Uuid (#77)
  • [FEATURE] Automatically enable useSortable if table is sortable
  • [FEATURE] Provide vendor of root composer project as default
  • [FEATURE] Localizable items for Select, Radio and Checkbox
  • [FEATURE] Add support for saveAndClose
  • [BUGFIX] Ignore Collection fields if foreign_table is defined
  • [BUGFIX] Allow to abort question for content block name
  • [BUGFIX] Keep dots in FlexForm field identifier
  • [BUGFIX] Prevent TypeError for transformSelectSingleRelation (#71)
  • [BUGFIX] Handle missing icon gracefully
  • [BUGFIX] Avoid negative array key access
  • [TASK] Implement cache for Basics
  • [TASK] Add hint for f:debug users

And much more refactoring and documentation improvements.

Further contributers for this release. Thanks!

Nikita Hovratov - Content Blocks developer

0.4.0

03 Dec 17:52

Choose a tag to compare

What's Changed

The Database Analyzer will most probably want to remove some fields. This is fine and intended! The only thing you
should look out for is the constellation: Collection with foreign_table set. If you want to be able to reuse the
referenced table in more than one table or field (within the same Content Block), you should add the options
shareAcrossTables and shareAcrossFields to the Collection field respectively.

  • [!!!] Option alternativeSql removed. Please use ext_tables.sql overrides instead.
  • [!!! FEATURE] New options shareAcrossTables and shareAcrossFields.
  • [FEATURE] Language Generator Command
  • [FEATURE] List Content Blocks command
  • [FEATURE] ResourceViewHelper
  • [FEATURE] Removed aggregateRoot option. This will be detected automatically.
  • [FEATURE] Allow alternative table name for local Collections
  • [FEATURE] Only add workspaces fields if EXT:workspaces is installed.
  • [FEATURE] title and description can now be also set in EditorInterface.yaml
  • [BUGFIX] Allow string for displayCond #58

And many more bugfixes, refactoring and documentation improvements.

0.3.0

27 Nov 07:41

Choose a tag to compare

What's Changed

  • [!!!][TASK] Automatic language keys for title and description simplified. The vendor and name do not need to be included anymore. See documenation
  • [!!!][BUGFIX] Option enableImageManipulation renamed to extendedPalette. See documentation
  • [FEATURE] Add seo tab automatically if seo extension is loaded. The Basic TYPO3/Seo is removed.
  • [FEATURE] Add type Password
  • [FEATURE] It's now possible to set inline label for FlexForm fields
  • [FEATURE] make:content-block command now offers current timestamp for new Page Types as type name.
  • [TASK] Labels.xlf labels now override inline labels defined in YAML
  • [TASK] Make fieldControl and fieldWizard available for all field types
  • [TASK] Labels.xlf is now optional
  • [BUGFIX] Prevent prefixing of system field "internalDescription"
  • [BUGFIX] Allow to reuse custom extension fields defined in TCA/Overrides

And many more bugfixes, refactoring and documentation improvements.