SilverStripe,侧栏或主页上的最后留言簿条目

时间:2011-10-31 15:55:45

标签: module 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错误。有什么想法吗?

提前致谢。

1 个答案:

答案 0 :(得分:0)

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

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;
}