491 Posts in 152 Topics by 242 members
|
Page:
1
|
Go to End | |
| Author | Topic: | 1345 Views |
-
Demo CMS template layout

3 May 2010 at 1:34pm Last edited: 3 May 2010 2:00pm
Hi Guys,
How do I set up a page in the CMS like the CMS demo home page with four separate content areas each one editable in the CMS?
There will obviously need to be some template changes to accommodate this too.
Cheers Jeff
-
Re: Demo CMS template layout

3 May 2010 at 9:04pm
Have a read of tutorial 2 for an explanation on how to add fields to the cms and templates. The PHP code for demo looks something like this for reference
<?php
class HomePage extends Page {
static $db = array(
"LeftBoxTxt" => "HTMLText",
"MiddleBoxTxt" => "HTMLText",
"RightBoxTxt" => "HTMLText"
);static $has_one = array(
'LeftBoxImg' => 'Image',
'MiddleBoxImg' => 'Image',
'RightBoxImg' => 'Image'
);
function getCMSFields() {
$fields = parent::getCMSFields();
$fields->addFieldToTab("Root.Content.Main", new HTMLEditorField("LeftBoxTxt","Left box text"));
$fields->addFieldToTab("Root.Content.Main", new ImageField('LeftBoxImg', 'Left Image'));
$fields->addFieldToTab("Root.Content.Main", new HTMLEditorField('MiddleBoxTxt','Middle box text'));
$fields->addFieldToTab("Root.Content.Main", new ImageField('MiddleBoxImg', 'Middle Image'));
$fields->addFieldToTab("Root.Content.Main", new HTMLEditorField('RightBoxTxt','Right box text'));
$fields->addFieldToTab("Root.Content.Main", new ImageField('RightBoxImg', 'Right Image'));
return $fields;
}// ....
And then in the template just standard $RightBoxTxt etc for each element. If your new to SilverStripe that above code will look overwhelming so I encourage you read the tutorial first.
-
Re: Demo CMS template layout

4 May 2010 at 6:32am Last edited: 4 May 2010 7:01am
Hey Willr,
Thanks very much for this, I'm OK with the PHP, but I am new to SilverStripe and keen to develop some templates.
This info is perfect and will get me going in the right direction.
Cheers Jeff
| 1345 Views | ||
|
Page:
1
|
Go to Top |

