[MGNLSTK-1364] Name first site definition "default" in all Magnolia editions Created: 27/Feb/14  Updated: 02/Jul/18  Resolved: 02/Jul/18

Status: Closed
Project: Magnolia Standard Templating Kit (closed)
Component/s: base system
Affects Version/s: 2.7.2
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: Antti Hietala Assignee: Christopher Zimmermann
Resolution: Won't Do Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File site-definitions-ce-vs-ee.png    
Template:
Acceptance criteria:
Empty
Date of First Response:

 Description   

The naming of site definitions is inconsistent between CE and EE and difficult to explain in documentation and training.

In CE the only allowed site definition is called 'site'. A user cannot see the name in the Site Definitions app, only in /modules/standard-templating-kit/config/site. The subnodes (templates, themes, variations) are visible in the app however. (screenshot)

In EE the first site definition is called 'default'. The root node is visible in the app and easy to understand and explain.

Suggested improvements:

  1. Name the first site definition 'default' in all Magnolia editions.
  2. Make the site definition root node visible in the Site Definitions app in all editions.

(The intention behind the 'site' name in CE may have been to prevent users from thinking they can create more than one site definition. However, the same confusion exists in EE. EE allows you to create multiple site definitions but the system never takes them into account unless you have an EE Pro license. This restriction is not obvious from the system. So the different naming doesn't really help.)



 Comments   
Comment by Christian Ringele [ 27/Feb/14 ]

The CE site behavior and configuration and the EE (pro and non pro) have a complete different configuration structure:

The module class of STK (CE used) has this bean configuration definition within the modules config node:

private Site site;

This means there can only be one site configured with the exact name 'site'.
Configuration from it:
%moduleName%/config/site
Where in this situation 'site' is the best name to choose, becuase it is a site configuration.
%moduleName%/config/default
would be completely misleading, because its not a default config (as /config/default/ would implement).

Where the multi-site (former etk) module allows a Map of sites:

private Map<String, Site> sites = new LinkedHashMap<String, Site>();

This means you can add more than one site definition into the nodes sites.
One of them is 'default'.
The resulting config is:
%moduleName%/config/sites/default
Which expresses the correct thing, the default site configuration (from /sites/default).
So even EE (non pro) license uses only one site definition, it still allows you to add more than one.
For example you enter a pro license, and all configs are used, no change needed.
Using only one site defintion (default) does not mean that you cant add more than one, as it is in this case.

But only using CE you can configure only one, cause the multisite module is not there at all.

Comment by Jan Haderka [ 02/Jul/18 ]

STK have been deprecated in September 2017. As part of this project nearing end-of-life, we are not planning to fix any of the existing issues except for the critical security issues. For more details, please consult documentation.

Generated at Mon Feb 12 07:35:52 CET 2024 using Jira 9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b.