It's so easy when you know how. The problem I also find with SilverStripe is finding the information, especially if you are not a programmer or part of the team.
Presuming you are using SS3 and you added your news articles to the CMS page with a date, I create a news template with...
static $db = array(
'Date' => 'Date'
);
and a nice way to show the date in the CMS...
function getCMSFields() {
$fields = parent::getCMSFields();
$datefield = new DateField('Date', 'Publication date');
$datefield->setConfig('showcalendar', true);
$datefield->setConfig('showdropdown', true);
$datefield->setConfig('dateformat', 'dd/MM/YYYY');
$fields->addFieldToTab('Root.Main', $datefield, 'Content');
...
You need to display snippets from the page above in the tree then create a template called NewsHolder simply in the SS file template add...
<% loop Children %>
<h2>$Title</h2>
<div class="date">
$Date.Nice
</div>
<p>$Content.FirstParagraph </p>
<p><a href="$Link" class="more">Read more</a></p>
<% end_loop %>
..but if you want to diplay snippets on another template like the homepage you need to create a function I call it LatestNews function and call this from the SS. The function will call the NewsHolder you created above.
<% loop LatestNews %>
<div class="news-item jlink">
<h2>$Title</h2>
<p><span class="date">$Date.Nice</span><br>
<a class="more" href="$Link">Read more</a> - $Content.FirstSentence</p>
</div>
<% end_loop %>
...and the function you need goes is the PHP of the template in the mysite/code such as hompage.php inside the class HomePage extends Page {...
// show news
function LatestNews($num=2) {
$news = DataObject::get_one("NewsHolder");
return ($news) ? DataObject::get("NewsArticle", "ParentID = $news->ID", "Date DESC", "", $num) : false;
}
That should be more than enough to get you going if not go back to the basic tutorials. Good luck.
p.s. I would re-write the topic title to explain the content of the posts so that others know what this thread is about.