[FEATURE] Group-based content fetching in Frontend
This change adds a new RecordCollector which is similar to CONTENT cObject, except that it does not render the records directly, but instead creates instances of a generic Record object, so the Templating Engine can deal with the way of how the record should be rendered. Based on the Page Layout / Backend Layout, all registered colPos contents are fetched, and grouped, if the Backend Layout has an "identifier" set via a new PageContentFetchingProcessor ("page-content"). The slide functionality can now be defined in the Page Layout as well (Backend Layout), with a Enum defining to Collect, CollectReverse and a simple Slide logic. This feature brings a clearer separation of fetching content from the database and the actual representation in the output (fluid) in place, allowing for further optimizations. In addition, one needs to write much less TypoScript to fetch all contents from a page. Next steps is then to enrich the records with their relations (see next feature), and to optimize the Fluid-based rendering for any kind of content. Resolves: #103894 Releases: main Change-Id: I6a1a0efacefe8c83e86b9551b00199c93e284a28 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83638 Reviewed-by:Oliver Bartsch <bo@cedev.de> Tested-by:
Georg Ringer <georg.ringer@gmail.com> Reviewed-by:
Benni Mack <benni@typo3.org> Tested-by:
Oliver Bartsch <bo@cedev.de> Reviewed-by:
Georg Ringer <georg.ringer@gmail.com> Tested-by:
core-ci <typo3@b13.com> Tested-by:
Benni Mack <benni@typo3.org>
Showing
- typo3/sysext/backend/Classes/View/BackendLayoutView.php 1 addition, 0 deletionstypo3/sysext/backend/Classes/View/BackendLayoutView.php
- typo3/sysext/core/Documentation/Changelog/13.2/Feature-103894-AdditionalPropertiesForColumnsInPageLayouts.rst 101 additions, 0 deletions...re-103894-AdditionalPropertiesForColumnsInPageLayouts.rst
- typo3/sysext/frontend/Classes/Content/ContentSlideMode.php 36 additions, 0 deletionstypo3/sysext/frontend/Classes/Content/ContentSlideMode.php
- typo3/sysext/frontend/Classes/Content/RecordCollector.php 83 additions, 0 deletionstypo3/sysext/frontend/Classes/Content/RecordCollector.php
- typo3/sysext/frontend/Classes/DataProcessing/PageContentFetchingProcessor.php 73 additions, 0 deletions...d/Classes/DataProcessing/PageContentFetchingProcessor.php
- typo3/sysext/frontend/Configuration/Services.yaml 4 additions, 0 deletionstypo3/sysext/frontend/Configuration/Services.yaml
- typo3/sysext/frontend/Tests/Functional/DataProcessing/Fixtures/PageContentProcessor/Pages/Default.html 26 additions, 0 deletions...ocessing/Fixtures/PageContentProcessor/Pages/Default.html
- typo3/sysext/frontend/Tests/Functional/DataProcessing/Fixtures/PageContentProcessor/Pages/Home.html 16 additions, 0 deletions...aProcessing/Fixtures/PageContentProcessor/Pages/Home.html
- typo3/sysext/frontend/Tests/Functional/DataProcessing/Fixtures/PageContentProcessor/Pages/Productdetail.html 26 additions, 0 deletions...ng/Fixtures/PageContentProcessor/Pages/Productdetail.html
- typo3/sysext/frontend/Tests/Functional/DataProcessing/Fixtures/PageContentProcessor/Partials/SingleContent.html 6 additions, 0 deletions...Fixtures/PageContentProcessor/Partials/SingleContent.html
- typo3/sysext/frontend/Tests/Functional/DataProcessing/Fixtures/PageContentProcessor/setup.typoscript 6 additions, 0 deletions...Processing/Fixtures/PageContentProcessor/setup.typoscript
- typo3/sysext/frontend/Tests/Functional/DataProcessing/Fixtures/RecordTransform/setup.typoscript 0 additions, 0 deletions.../DataProcessing/Fixtures/RecordTransform/setup.typoscript
- typo3/sysext/frontend/Tests/Functional/DataProcessing/PageContentFetchingProcessorTest.php 94 additions, 0 deletions...ional/DataProcessing/PageContentFetchingProcessorTest.php
- typo3/sysext/frontend/Tests/Functional/DataProcessing/RecordTransformationProcessorTest.php 1 addition, 1 deletion...onal/DataProcessing/RecordTransformationProcessorTest.php
Please register or sign in to comment