0

我正在使用 Asp.Net CMS Umbraco 并希望得到一些帮助来确定 Umbraco CMS 是否有特定的东西可能使创建多色菜单栏的任务......不同于标准的 html 和 css操纵。

我使用的菜单条码基于 Umbraco 附带的友好幽灵主题。

现在在菜单中使用不同颜色的正常方法是这样的

       div # menu ul.rMenu li.page-item-(some number) {background-color: # (whatever);}

        ...

        ...

<li class "rMenu-expand page-item-(the same number as above)"><a href="(link to whatever site on the menu)">
    <span> Wording for the particular tab </span></a></li>

宾果游戏......(一些数字)选项卡具有(无论如何)颜色!


但是,Umbraco 似乎使用了与上述策略不完全兼容的不同设置。我应该查看 *umbTextpage id *parentID *nodeType ... 还是我尚未注意到的完全不同的东西?

我相信 nodeName 被用于特定选项卡的措辞......那么我应该接受它,那个 nodeType 是指选项卡本身吗?


太好了,谢谢。但是,菜单是使用 xslt 动态生成的。你认为我应该尝试将该代码(转换为 xslt)插入到菜单生成过程中吗?

 <xsl:for-each select="$currentPage/ancestor-or-self::* [@level=$level]/* [@isDoc and string(umbracoNaviHide) != '1']">

     <li>

       <xsl:if test="@id = $currentPage/@id">

          <xsl:attribute name="class">current</xsl:attribute>

       </xsl:if>

      <a class="navigation" href="{umbraco.library:NiceUrl(@id)}">

       <span><xsl:value-of select="@nodeName"/></span>

      </a>

    </li> 

...或尝试在事后使用剃须刀代码(即​​创建菜单并随后循环遍历菜单元素,为每个节点提供数字“标签”)?

4

1 回答 1

0

Umbraco 的美妙之处在于您可以完全控制布局。你可以让它随心所欲地构建你的菜单。

我不知道您是使用 xslt 还是 razor 来生成菜单,但是如果您正在寻找一个唯一的数字来附加到“page-number-”,那么使用节点的 ID,这甚至不会改变如果节点的名称被编辑。

使用 Umbraco 4.7 剃须刀,您可以执行以下操作:

@{
    <ul>
    @foreach (var node in Model.AncestorOrSelf().Children.Where("Visible"))
    {
        <li class="rMenu-expand page-item-@node.Id">
            <a href="@node.Url">
                <span>@node.Name</span>
            </a>
        </li>
    }
    </ul>
}
于 2012-06-14T12:22:04.437 回答