1

我有自己的基于 Twitter Bootstrap 3 的 DNN7 皮肤,它使用 DDRMenu。我想在glyphicon我的一些子菜单项旁边放一个,如下所示:

扩展菜单示例

该图像是仅使用默认Twitter Bootstrap.navbar-fixed-top的模型。单个子菜单项如下所示:

<li>
  <a href="/">
    <span class="glyphicon glyphicon-home"></span>
    My sub page 1
  </a>
</li>

我的皮肤使用“ULTokens.txt”方法来创建 DDRMenu。目前一个典型的子菜单节点如下所示:

[>NODE]
    <li class="item[?FIRST] first[/?][?LAST] last[/?][?SELECTED] active[/?][?NODE] haschild[/?]">
        [?ENABLED]
            <a href="[=URL]"><span class="glyphicon-none"></span> [=TEXT]</a>
        [?ELSE]
            <a><span class="glyphicon-none"></span> [=TEXT]</a>
        [/?]
    </li>
    [?NODE]
        <span style="margin-left: 10px;"></span>
        [*>NODE]
    [/?]
[/>]

现在我知道我可以使用[=ICON]令牌来放置图标,这似乎是首选方法。但是,向页面添加图标的屏幕是这样的:

从站点文件添加图标

或者

从系统图像添加图标

简而言之,我们只能使用图像文件。相反,我想使用glyphicon.

看来我唯一真正的选择是从适当的字形图标创建一个 PNG,然后选择它们作为页面的图像。我目前看到的坚持使用 glyphicons 的唯一“非选项”是使用 Javascript 将它们注入菜单运行时,但即使只是建议,我也觉得很脏。

除了创建我自己的菜单提供程序和上述解决方法之外,是否有任何简单的方法可以将字形图标用于菜单项?

4

1 回答 1

1

是的,默认页面设置对话框中没有任何方法可以分配类或显示图标列表。您可以创建一个自定义模块或外观对象,管理员可以使用它来分配一个图标(保存为选项卡/页面设置),但这将在主页设置之外,您将无法从菜单模板(您需要将菜单切换到 Razor 模板,以便您可以执行任意代码并检索选项卡/页面设置)。

DNN 7.1中有一个项目在页面设置中引入一个用于任意设置的部分,但由于不够完整而被从版本中删除。理想情况下,这会得到修复并重新添加(它的范围通过DNN-3175),但我认为没有人关注它。

于 2014-10-10T18:11:57.097 回答