Release Notes / Version 10.2107
Table Of Contents
The behavior of P13N Dynamic Includes is now configurable. You can decide to use the container based approach that declares a whole container which contains any p13n relevant content as uncacheable (default behavior, nothing new) or switch to the new approach which will declare single items inside the containers as uncacheable by adding and enabling a new boolean setting
p13n-dynamic-include-per-item
to the page.
The latter has the advantage that single placements containing a large number of items can still be cached partially if p13n content is contained. Please note that this will only work as expected if you do not use the (now deprecated)
getFlattenedItems
method of the
com.coremedia.blueprint.layout.Container
interface. Please also check the corresponding new section "Rendering Container Layouts" of the frontend developer manual for a possible approach to get rid of
getFlattenedItems
.
The behavior is fully backwards compatible so in case you did not make any adjustments there is nothing to do.
In case you have made modifications to how p13n dynamic include work please note that the constant
P13N_DYNAMIC_INCLUDES_SETTING
of the class
com.coremedia.blueprint.personalization.include.P13NDynamicContainerStrategy
has been moved to
com.coremedia.blueprint.personalization.include.P13NDynamicIncludeSettings
.
In addition to this the existing (but in our default configuration unused) class
com.coremedia.blueprint.personalization.include.P13NIncludePredicate
now also takes the p13n settings into account. In case you have used the predicate you can decide to add the aforementioned settings to your root channel or preserve the implementation of the version you are migrating from.
(CMS-17169)