Site initialization
The site is created by the xml configuration. This step is well described in Creating a new site, Developer Guide.
For the ACME project, it is done in portal-configuration.xml.
Site layout
You may have read that from top to bottom of the layout design, there is a shared layout for all sites of a portal, a site layout for all pages of a site, and each page is a layout of applications.
The ACME project does not override sharedlayout.xml
, but derives the administration bar and navigation of the default portal.
See the ACME site layout here.
Navigation and pages
Besides portal.xml
, a site definition requires navigation.xml
and pages.xml
.
The three files are in
the same folder.
The navigation.xml
defines nodes that can be understood as a link to pages in the UI.
Note the page visibility is configurable. There are many nodes in navigation.xml
, but users see 4 pages
which are configured as DISPLAYED:
<node>
<uri>overview</uri>
<name>overview</name>
<label>#{portal.acme.overview}</label>
<visibility>DISPLAYED</visibility>
<page-reference>portal::acme::overview</page-reference>
</node>
You may notice that the Products page is different from the others. There is an API to plug sub-menu that will be documented later.