您好我在“简单”模板上使用Silverstripe CMS。我想知道如何为菜单项创建字幕。
当前导航模板如下:
<nav class="primary">
<span class="nav-open-button">²</span>
<ul>
<% loop $Menu(2) %>
<li class="$LinkingMode"><a href="$Link" title="$Title.XML">$MenuTitle.XML</a></li>
<% end_loop %>
</ul>
我想我可以以某种方式编辑$Menutitle.XML
,但是如何?子标题也应直接显示在标题下,但作为相同的按钮。 SubTitle需要有一个不同的css规则,以便它可以更小。我知道CMS有一个区域可供我编辑成为菜单标题的页面标题,是否可以很容易地向管理员添加字幕,还是有其他更简单的方法?我只需要制作一些。
答案 0 :(得分:3)
简单易行:
在$db
类的Page
数组中添加一个字段:
private static $db = array('SubTitle' => 'Varchar(255)');
然后在同一文件中的getCMSFields
方法中添加此字段:
public function getCMSFields() {
$fields = parent::getCMSFields();
$fields->addFieldToTab('Root.Main', TextField::create('SubTitle'));
return $fields;
}
现在您可以在模板中使用变量$SubTitle
,例如:
<li class="$LinkingMode"><a href="$Link" title="$Title.XML">$MenuTitle.XML - $SubTitle</a></li>
如果所有这些听起来太复杂,你应该首先阅读silverstripe教程,参见http://doc.silverstripe.org/framework/en/tutorials/