2011-10-31 73 views
0

是否有人知道如何或指示我如何在侧边栏或主页中显示最后留言簿条目(使用简单留言簿模块)?SilverStripe,侧边栏或主页中的最后留言簿条目

试图一展身手,我已经把HomePage.php此功能

function LastGuest($nume=1) { 
     $guest = DataObject::get_one("Guestbook"); 
     return ($guest) ? DataObject::get("GuestbookEntry", "", "Date DESC", "", $nume) : false; 
} 

和HomePage.ss这样的:

<% control LastGuest %> 
     <div class="newsList"> 
      <h2 class="newsTitle">$Title.XML</h2> 
       <article class="newsSummary">$Comment</article> 
     </div> 
<% end_control %> 

但它不工作。我得到一个500错误。任何想法?

在此先感谢。

+0

打开调试模式查看详细的错误报告。 – Hamish

回答

0

这对我有用。首先看看你是否有类Guestbook的页面,抓住页面的ID。然后在GuestbookEntry::getEntryList的参数中使用该ID

function LastGuest() { 
    if ($guestbook = DataObject::get_one('GuestBook')) { 
     $id = $guestbook->ID; 
     $params = array(
      'filter' => 'IsActive = 1 AND IsSpam = 0 AND GuestbookID = ' . $id, 
      'sort' => 'Created DESC', 
      'limit_start' => 0, 
      'limit_end' => 1, 
      'comments' => false, 
      'cryptmail' => false, 
      'emoticons' => false, 
     ); 
     $entries = GuestbookEntry::getEntryList($params); 
     return $entries; 
    } 
    return; 
}