Currently only one block per page is possible:
Code: Select all
<__html>
<HEAD>
<TITLE>Example</TITLE>
</HEAD>
</__body>
<layout>
{content}
<layout>
<__body>
</__html>
Code: Select all
<__html>
<HEAD>
<TITLE>Example</TITLE>
</HEAD>
</__body>
<layout>
{content name="section 1"}
<layout>
{content name="section 2"}
<layout>
<__body>
</__html>
The names of these blocks could be defined in the templates, together with a description:
Code: Select all
<linkedcontent name="Section 1" desc="This is section 1">
<linkedcontent name="Section 2" desc="This is section 2">
<__html>
<HEAD>
<TITLE>Example</TITLE>
</HEAD>
</__body>
<layout>
{content name="section 1"}
<layout>
{content name="section 2"}
<layout>
<__body>
</__html>
Now the story becomes a little more complex: An lot of flexibility would be gained if it would be possible to, from one page, access content blocks assigned to other pages
Imagine a template "Main template" on which a page "Frontpage" is based:
Code: Select all
<linkedcontent name="site bckcol" desc="Background color of the whole website" type="color">
<linkedcontent name="Section 1" desc="This is section 1" type="richtext">
<__html>
<HEAD>
<TITLE>Example</TITLE>
</HEAD>
</__body bgcolor="{content name="site bckcol" page="Frontpage"}">
{content name="section 1" page="this"}
<__body>
</__html>
Code: Select all
<linkedcontent name="Section 1" desc="This is section 1" type="richtext" styles=['Normal ','Big']>
<__html>
<HEAD>
<TITLE>Example</TITLE>
</HEAD>
</__body bgcolor="{content name="site bckcol" page="Frontpage"}">
{content name="section 1" page="this"}
<__body>
</__html>
There is one ugly aspect to this setup. A reference to a page (page="Frontpage") is hardcoded in the template. A page with this name, based on template "Main template" should always exist in order to access this data.
The advantage is, though, that in this manner editing a value on one page will propagate through the whole website. This would be nice for page titles, meta tags and all kinds of other content.
Another feature that I think would be really very cool, is an edit marker (for lack of a better word) to mark editable content regions in preview mode. Clicking on these markers (for example: ) will transport you to the respective content editor. The markers should be placed at a logical place in the page, usually just in front or after the editable block but not in a tag, as that would break the HTML
Code: Select all
<linkedcontent name="bckcol" desc="Background color of page" type="color">
<linkedcontent name="Section 1" desc="This is section 1" type="richtext">
<__html>
<HEAD>
<TITLE>Example</TITLE>
</HEAD>
</__body bgcolor="{content name="bckcol" page="Frontpage"}">
{marker name="bckcol" page="Frontpage"}
{marker name="section 1"}
{content name="section 1"}
<__body>
</__html>
An demonstration of this kind of markers can be found here http://testsite.contemplated.net/cgi-bi ... ltered.cgi
1. press demo page.cnt
2. choose Edit page
3. press one of the edit markers
4. edit block
I realise that might make CMS made easy a bit more complex, but mainly for the programmers, so no problem there . For site builders the complexity could slightly increase, but that is also a matter of choice. The simplest page you could build is not much complexer than it is now:
Code: Select all
<linkedcontent name="Section 1" desc="This is section 1" type="richtext">
<__html>
<HEAD>
<TITLE>Example</TITLE>
</HEAD>
</__body>
<layout>
{content name="section 1"}
<layout>
<__body>
</__html>