首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在TYPO3中拆分和包装HMENU项?

如何在TYPO3中拆分和包装HMENU项?
EN

Stack Overflow用户
提问于 2013-10-24 19:15:04
回答 3查看 1.5K关注 0票数 0

我正在尝试用TypoScript创建一个自定义菜单,我有8个Menüitems,我想删除css类"dropdown_1column和dropdown_1column“中的前2项,我不知道怎么做?

我曾经经历过,它是与Typoscript onSplit函数可能的,在这个代码有什么问题吗?

代码语言:javascript
复制
 wrap = <ul class="levels">|</ul>|| <ul class="levels">|</ul>|*|<div class="dropdown_1column"><div class="col_1 firstcolumn"><ul class="levels">|</ul></div></div>||<ul class="levels">|</ul>

前两项应包装如下:

代码语言:javascript
复制
 <ul class="levels">|</ul>

其余物品应包装在:

代码语言:javascript
复制
 <div class="dropdown_1column"><div class="col_1 firstcolumn"><ul class="levels">|</ul></div></div>

这里是我的html输出:

代码语言:javascript
复制
<li>
   <a class="drop" href="blblbl/">item</a>
      <div class="dropdown_1column">
          <div class="col_1 firstcolumn">
            <ul class="levels">
               <li>
               <li>
               <li>
            </ul>
      </div>
 </li>

一定是这样的

代码语言:javascript
复制
<li>
   <a class="drop" href="blblbl/">item</a>
      <div>
          <div>
            <ul class="levels">
               <li>
               <li>
               <li>
            </ul>
      </div>
 </li>

谢谢你的帮助。

EN

Stack Overflow用户

回答已采纳

发布于 2013-10-27 23:35:49

我想说,没有人在这里读过TSref :)

你需要的是:

根据optionSplit 1的第4条规则:

如果最后一部分没有,则中间值被重复

因此,最优雅和最短的optionSplit语法将是:

代码语言:javascript
复制
first || second |*| the_rest

在Typoscript代码中,如下所示:

代码语言:javascript
复制
<ul class="levels">|</ul> || <ul class="levels">|</ul> |*| <div class="dropdown_1column"><div class="col_1 firstcolumn"><ul class="levels">|</ul></div></div>

你得到了什么:

您编写的optionSplit具有如下语法:

代码语言:javascript
复制
F || S |*| M1 || M2

它产生的菜单如下:

代码语言:javascript
复制
F S M1 M2 M1 M2 M1 M2....

因为(最后一个,或者如果没有)中间部分在第一部分之后不断重复。

有关optionSplit的更多信息。

票数 0
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19574627

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档