Hi all,
I just completed my first migration to Neos 3.0.1 successfully and I have to admit everything went smoothly with only a couple of (expected) bumps.
The only thing that got me a little confused is the use of namspeace for Page nodes.
The official migration script renamed all of Page nodes to Neos.NodeTypes:Page either in MyPackage.Site/…/NodeTypes.yaml either in MyPackage.Site/…/Sites.xml, but if I try to set the same namespace into my MyPackage.Site/…/Root.fusion (page = Neos.NodeTypes:Page), Neos complains about a missing template with this error:
The fluid file "resource://Neos.NodeTypes/Private/Templates/NodeTypes/Page.html" was not found.
The error vanishes is I correct my Root.fusion in page = Neos.Neos:Page
This behaviour left me a little puzzled: is it normal? If so, when should I use Neos.Neos:Page and when Neos.NodeTypes:Page?
As a side note: I bumped into this “issue” because leaving Root.fusion as before with lines like
page = Page
breaks everything leaving me with a 502 Bad Gateway caused by php-fpm segmentation fault error.
The Neos package provides a default renderer for HTML Pages, which is a Fusion prototype called Neos.Neos:Page.
No NodeType by that name exists because we want to allow you to disable all (visible) NodeTypes.
The Neos.NodeTypes package ships a default page NodeType (inheriting from the abstract Neos.Neos:Document, which is the base for all “page”-like NodeTypes), this node type is called Neos.NodeTypes:Page and is commonly used as default page type, it has no Fusion protoype though as the Neos.Neos:Page prototype is usually used to render it (or to be more precise, it gets some default fusion code as any other NodeType, but that is not suitable).
So in short, you extend NodeTypes from Neos.NodeTypes:Page but you render pages with the Fusion prototype Neos.Neos:Page.