我有NewsPage
类型,在导航中我想显示一个名为Latest News
的条目,该条目将呈现最新的NewsPage
(根据Created
字段)。这可能吗?
答案 0 :(得分:2)
根据您的导航模板,您应该能够将链接插入ul内导航列表项内的最新NewsPage。
要获取最新的NewsPage,您需要在页面控制器中编写一个返回最新新闻页面的函数。这是一个例子。
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来检查它所处的位置。这是一个例子:&lt;%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>
以上将在导航内的第二个位置插入链接。