【问题标题】:Create a subtitle for menu items in Silverstripe CMS?在 Silverstripe CMS 中为菜单项创建副标题?
【发布时间】:2013-06-30 08:13:26
【问题描述】:

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

【问题讨论】:

    标签: php css content-management-system silverstripe


    【解决方案1】:

    做起来很简单:

    Page 类的$db 数组中添加一个字段:

    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/

    【讨论】:

    • 大约一周后我才能尝试实现这一点。谢谢你们。看起来很有帮助:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多