0

您好我在“简单”模板上使用 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 有一个区域供我编辑成为菜单标题的页面标题,这样向管理员添加副标题是否容易,或者有其他更简单的方法吗?我只需要制作其中的几个。

4

1 回答 1

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/

于 2013-07-03T12:12:09.473 回答