1

在 TYPO3 HMENU 中,二级 TMENU 应该再现一级页面的摘要。

我确实设法用一个值填充寄存器并在第二级 TMENU 中使用它 - 但我无法将该字段的内容加载到寄存器中。

所以

field = abstract

value = {field:abstract}
value.insertData = 1

不产生任何输出。

该寄存器如何填写父页面的摘要?

这是完整的代码。

temp.main_nav = HMENU
temp.main_nav {
  wrap = <nav id="cbp-hrmenu" class="clearfix cbp-hrmenu span12">|</nav>
  entryLevel = 0

  1 = TMENU
  1 {
        noBlur = 1
        expAll = 1
        wrap = <ul class="level1">|</ul>

        NO {

            wrapItemAndSub=<li>|</li>                   

            before.cObject=LOAD_REGISTER
            before.cObject{
                    parentAbstract.stdWrap.cObject=TEXT
                    parentAbstract.stdWrap.cObject{
                        field = abstract
                        #value = {field:abstract}
                        #value.insertData = 1
                    }
            }
        }

    }

  2 < .1
  2.stdWrap.dataWrap = <div class="cbp-hrsub"><div class="cbp-hrsub-inner"><div>{register:parentAbstract}</div><div><ul class="level2">|</ul></div></div><!-- /cbp-hrsub-inner --></div><!-- /cbp-hrsub -->

}

PS:{levelfield} 在 TMENU 中似乎有问题,这就是我切换到 LOAD_REGISTER 的原因

4

1 回答 1

1

解决了。

问题出在

2 < .1 

第二个 TMENU 从第一个 TMENU 继承了 load_register 并不断填充它。这就是为什么其中有一个错误的摘要(例如一个空的摘要)。

这是工作代码:

temp.main_nav = HMENU
temp.main_nav {
  wrap = <nav id="cbp-hrmenu" class="clearfix cbp-hrmenu span12">|</nav>
  entryLevel = 0

  1 = TMENU
  1 {
        noBlur = 1
        expAll = 1
        wrap = <ul class="level1">|</ul>

        NO {

            wrapItemAndSub=<li>|</li>                   

            before.cObject=LOAD_REGISTER
            before.cObject{
                    parentAbstract.cObject=TEXT
                    parentAbstract.cObject{
                        field = abstract
                    }
            }
        }
        // EDIT: if you have additional states, don't forget to add the abstract too
        ACT < .NO
        ACT = 1
        ACT {
         wrapItemAndSub=<li class="dropdown active">|</li>
        }

    }

  2 = TMENU
  2 {
        noBlur = 1
        expAll = 1
        stdWrap.dataWrap = <div class="cbp-hrsub"><div class="cbp-hrsub-inner"><div>{register:parentAbstract}</div><div><ul class="level2">|</ul></div></div><!-- /cbp-hrsub-inner --></div><!-- /cbp-hrsub -->


        NO {
            wrapItemAndSub=<li>|</li>                   
        }

    }

}
于 2013-07-10T11:15:21.737 回答