Task #49951

Node structure / layout

Added by Aske Ertmann about 2 years ago. Updated about 2 years ago.

Status:New Start date:2013-07-11
Priority:Should have Due date:
Assigned To:- % Done:

0%

Category:- Spent time: -
Target version:1.0 beta 1

Description

We need a concept for node structure that works for documents and content. Currently we have a concept of childNodes which are automatically generated for content. Instead we should have concept of node structure that is used for both documents and content. Instead of using TypoScript to define the structure and create it during rendering, the structure should be configured in the node type to avoid a dependency on TypoScript and prevent modification of nodes during the rendering.

This would make it possible to provide certain layouts that matches your page templates / TypoScript. And then define templates based on the layout structure with a TypoScript case matcher.

Neos should provide some common structure names like main, header, footer etc. as a convention to allow easy switching between node types / layouts.

  • Creation of node structure should not be done during rendering (currently done as a hack in DefaultContentCollectionImplementation)
  • Adjustment of node structure needs to happen when creating a node, changing the node type or updating the layout property
  • The layouts feature should be implemented outside the scope of TYPO3CR as a concern of Neos
  • Layouts should be configured in the NodeTypes.yaml in an extensible way (e.g. prepend package key as in TypoScript to the name)

This should separate structure from presentation, which is for database operations etc.

We need a way to select the default layout so it can just inherit from it's parents. In addition to that it would be very useful to set the default for all children. Like in gridelements for CMS, where the layout can be chosen for the current page and for the subpages.

Associated revisions

Revision 3448a260
Added by Christian Müller almost 2 years ago

[!!!][TASK] Remove automagic creation of ContentCollections on pages

ContentCollections are no longer auto created on rendering of a
page. Instead they need to be defined as childNodes of the Page
Node. Neos predefines a "main" section by default which can be
overriden or added to in the site package. Additionally you can
of course create your own Document Type with a specific child
node structure.

This is breaking if you use more than the "main" section in your
site. In this case you have to define those additional sections
in the NodeTypes.yaml of your site package.

Related: #49951
Change-Id: I1017c59d89a67447667d7a3ed0dc3bd92cd6dd0d
Reviewed-on: https://review.typo3.org/24338
Reviewed-by: Christian Mueller
Tested-by: Christian Mueller

Revision 899b887d
Added by Christian Müller almost 2 years ago

[TASK] SiteKickstarter should generate NodeTypes.yaml

This creates lets the SiteKickstarter generate a NodeTypes.yaml
with explanation and code snippet to add more content areas to
your website.

Related: #49951
Change-Id: I61a220c8c9c92932d6ec75875c76084c42908b37

Also available in: Atom PDF