Hi everyone
I know there are quite some topics regarding Neos and multi-site, but since Neos 9.0 is a game changer rearding separate CRs per site, I could like to revisit the topic - with the goal of having an improved multi-language guide in the Neos docs. So I would like to use this post to collect information about the various aspects of multi-site installations and then use this information for a guide.
Neos 9.0
As presented at Neos Con, Neos 9 will can have one CR per site, so we can have different dimensions per site, which is often needed in multi-site installations.
Sites in Backend
Using the EntityPrivilege
for the Site and the NodeTreePrivilege
, different Sites can be restricted to different Roles. I assume this implementation won’t change?
I’m not sure about the multi-site compatibility of Sandstorm.NeosAcl yet, does anyone use it in a multi-site context?
Node Types
In contrast to Fusion, Node Types are globally configured, i.e. theoretically every Node Type is available in every site. However, this can be tackled with Node Type Constraints, which I assume will still be the way to go in Neos 9?
Fusion
As mentioned before, Neos loads Fusion code of the current site package, so shared Fusion code can be in an “abstract” package and specific Fusion code in the site package.
Media Management
The current best practise is to use an Asset Collection for each site and use ReadAssetCollectionPrivilege
and ReadAssetPrivilege
to restrict them to Roles. However, the approach has some drawbacks:
- A person with access to more than one Site can add an Asset to more than one Asset Collection, making it inaccessible to a user with access to only one site.
- Editors lose the ability to organize assets in Asset Collections.
As far as I know, both issues should be covered with FEATURE: Hierarchical asset collections by Sebobo · Pull Request #184 · Flowpack/media-ui · GitHub.
- Asset Collections become hierarchical.
- It will be possible to limit the UI so an Asset can only be added to one Asset Collection.
Link Editor
I’m not sure yet if the improved link editor must undergo any changes in order to be compatible with Neos 9. I’m also not sure how linking between sites can be achieved and access controlled (I assume you can only create internal links to sites you have read-access to?).
Please feel free to add other topics that are relevant to multi-site installations - and correct my assumptions if I’m wrong. After some time, I’ll try to compile a guide.