我有一个NewsPage
类型,在导航中我想显示一个名为的条目Latest News
,它将呈现最新的NewsPage
(根据Created
字段)。这可能吗?
问问题
319 次
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 回答