Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

Customising the CMS

Ability to update different page sections within the same page


Go to End
Reply

9 Posts   1740 Views

Avatar
wuzzi2ya

29 April 2010 at 3:32am Community Member, 7 Posts

I would like to be able to have 3 sections in the body of my homepage each spaced equally and horizontally. The layout is not a problem, what I need assistance with is the ability to update the content in each of the 3 sections independently. For example I have the 1st section far left with a header and small info with a read more. Then a center section with alternate header and info also with a read more. Then the far right section be a news section with header and feeds to news page. How do I go about setting this up in the CMS? Do I just need to create 3 submenus and change the content to not be nav but just copy? Seem as a CMS this shoud be quite easily accomplished. Be gentle Im familiar with CMS yet this is my first SS addition.

Thanks for any and all support...

Avatar
bartvanirsel

29 April 2010 at 7:57am Community Member, 94 Posts

First i recommend reading the docs at http://doc.silverstripe.org/ and order the book.

For creating different page sections within one page i recommend creating a blocks_holder which you can
use in your site tree. This blocks holder is in the page and can hold blocks with different settings in them.
This way it's posible to re-order your blocks by using the drag and drop functionality.

Avatar
Willr

29 April 2010 at 11:57pm Forum Moderator, 5511 Posts

1st section far left with a header and small info with a read more

Have a read of the 2nd tutorial. It covers how to add fields to the CMS. I wouldn't create pages just for content but just add a TextField, TextareaField etc to the HomePage using getCMSFields(). Like I said, tutorial 2 is a good start for this.

Avatar
wuzzi2ya

30 April 2010 at 2:16am Community Member, 7 Posts

Thanks all. I read over the extending-a-basic-site and am implementing the getCMSFields with ArticleHolder. So far so good...

Avatar
wuzzi2ya

6 May 2010 at 5:16pm Community Member, 7 Posts

Sooo I am getting stuck here:
Cant seem to get the latest news on the homepage. Here is what I have:

HomePage.php within mysite/code
-----------------------------------
<?php

class HomePage extends Page {
function LatestNews($num=3) {
$news = DataObject::get_one("ArticleHolder");
return ($news) ? DataObject::get("ArticlePage", "ParentID = $news->ID", "Date DESC", "", $num) : false;
}
}
?>

Homepage.ss within templates/layout
-----------------------
$Content
<div id="headStrong" class="Newstypography">
<h2>LATEST NEWS</h2>
<h3>WHATS HAPPENING AT AKL</h3>
</div>
<div id="ContentNews" class="typography">
<ul id="NewsList">
<% control Children %>
<li class="newsDateTitle">$Title</li>
<li class="newsDateTitle">$Date.Nice</li>
<li class="newsSummary">$Content.FirstParagraph Read more >></li>
<% end_control %>
</ul>
</div>

When this is all uploaded nothing shows on the homepage. What am I not doing or doing wrong?

Avatar
Willr

6 May 2010 at 6:13pm Forum Moderator, 5511 Posts

If you want to get the Latest news from that LatestNews function then you need to use <% control LatestNews %> not control Children in your template.

Avatar
bartvanirsel

6 May 2010 at 7:17pm Community Member, 94 Posts

i also think the LatestNews method should be in the controller to make it work.

Avatar
wuzzi2ya

7 May 2010 at 2:38am Community Member, 7 Posts

Well that makes perfect sense... I wont be able to get back to this project until later tonight, so I will put in the fix then. Thanks all...

Just to be clear, replace:
<% control Children %>
<li class="newsDateTitle">$Title</li>
<li class="newsDateTitle">$Date.Nice</li>
<li class="newsSummary">$Content.FirstParagraph Read more >></li>
<% end_control %>

with:
<% control LatestNews %>
<li class="newsDateTitle">$Title</li>
<li class="newsDateTitle">$Date.Nice</li>
<li class="newsSummary">$Content.FirstParagraph Read more >></li>
<% end_control %>

Thanks again, great forum...

Go to Top