0

我有一个NewsPage类型,在导航中我想显示一个名为的条目Latest News,它将呈现最新的NewsPage(根据Created字段)。这可能吗?

4

1 回答 1

2

根据您的导航模板,您应该能够在导航的 ul 内的列表项中插入指向最新 NewsPage 的链接。

要获取最新的 NewsPage,您需要在 Page Controller 中编写一个返回最新新闻页面的函数。这是一个例子。

function GetLatestNews()
{
     return DataObject::get_one('NewsPage', '', '', 'Created DESC');
}

然后在导航模板中,您应该执行类似的操作。

<ul id="navigation">
    <% control Menu(1) %>
        <li class="$LinkingMode"><a href="$Link">$MenuTitle.XML</a></li>
    <% end_control %>
    <li class="$LinkingMode"><a href="$GetLatestNews.Link">Latest News</a></li>
</ul>

这将在导航末尾插入链接。如果要将链接插入到特定位置,可以使用控件内的 $Pos 来检查它在哪个位置。这是一个例子:<% if Pos

 <ul id="navigation">
    <% control Menu(1) %>
          <% if Pos = 2 %>
              <li class="$LinkingMode"><a href="$GetLatestNews.Link">Latest News</a></li>
          <% end_if %>
    <li class="$LinkingMode"><a href="$Link">$MenuTitle.XML</a></li>

    <% end_control %>

</ul>

以上将在导航内的第二个位置插入链接。

于 2011-12-10T03:37:51.950 回答