我希望开发一个带有基础5.5.0的3级下拉菜单的菜单!包含页面内容的菜单。我可以看到标题,但是当我更改页面或标签时内容不会改变(链接是:| --- 1 --- | ...和标题11,标题12,标题13 ......和链接1到链接8或更多)。它通过菜单链接初始化为激活页面的内容。对于每个标题,我想显示相关页面的内容。我希望页面不会显示在菜单中的其他位置。
[ --- 1 --- (*)][--- 2 --- ][--- 3 --- ]
| Title 11 | Title 12 | Title 13 |
| Content 11 | Content 12 | Content 13 |
| | | |
| link 1 | link 4 | link 6 |
| link 2 | link 5 | link 7 |
| link 3 | | link 8 |
(*)actived。
包含页面内容的菜单: 我可以显示内容11'但它在所有其他内容中随处可见'内容' (内容11 =内容12 =内容13)。而不是标题的相应内容。当我点击另一个链接时,它就取代了另一个链接,并且在“内容x”中随处可见。
菜单本身有效。
lib.menuprincipal = COA
lib.menuprincipal {
wrap (
<div data-magellan-expedition="fixed" class="large-12 column" data-magellan>
<nav class="top-bar" data-topbar role="navigation">
|
</nav>
</div>
)
# NavBar Header
10 = TEXT
10 {
data = leveltitle:0
typolink {
parameter.data = parameters : allParams
ATagParams = class="TestAddParamClass"
title.data = leveltitle:0
#forceAbsoluteUrl = 1
}
wrap (
<ul class="title-area">
<li class="name">
<div class="show-for-small left">
<div id="poslogomin1" class="right">
<h2>Titre site/h2>
</div>
</div>
</li>
<li class="toggle-topbar menu-icon">|</li>
</ul>
)
}
# menu
20 = HMENU
20 {
#entryLevel = 0
wrap (
<section class="top-bar-section">
<ul class="left">
|
</ul>
</section>
)
# Premier niveau
1 = TMENU
1 {
entryLevel = 0
#wrap = |
expAll = 1
maxItems = 5
NO = 1
NO {
doNotLinkIt = 1
stdWrap.cObject = COA
stdWrap.cObject{
10 = TEXT
10.typolink.no_cache = 1
10.typolink.ATagBeforeWrap = 1
10.typolink.parameter.field = uid
10.cObject = COA
10.cObject{
10 = TEXT
10.wrap = <div class="tile tile|">
10.field = layout
20 = TEXT
20.wrap = <div class="title"><h2 style='color:darkblue'>|</h2></div>
20.field = title
30 = TEXT
30.wrap = <div class = "subtitle"><h2 style='color:darkred'>|</h2></div>
30.field = subtitle
40 = CONTENT
40.wrap = <div class = "subtitle"><div>|</div></div>
40 {
table = tt_content
select {
where= colPos=0
uidInList.field = this
}
}
40.field < styles.content.get
50 = TEXT
50.value = </div>
}
}
}
NO.wrapItemAndSub = <li class="has-dropdown">|</li>
ACT = 1
ACT.wrapItemAndSub = <li class="has-dropdown">|</li>
IFSUB = 1
IFSUB.wrapItemAndSub = <li class="has-dropdown">|</li>
}//1
# Deuxième niveau
2 < .1
2 = TMENU
2 {
#entryLevel = 0
maxItems = 5
wrap (
<ul class="dropdown">
<li>
<div class="row mynav" id="nav-2">
|
</div>
</li>
</ul>
)
expAll = 1
NO = 1
NO.wrapItemAndSub = <div class="large-3 medium-6 column">|</div>
NO.stdWrap.wrap = <h2 style='color:darkgreen'>|</h2>
ACT < .NO
CUR < .NO
IFSUB < .NO
ACTIFSUB < .NO
}//2
# Troisième niveau
3 = TMENU
3 {
#entryLevel = 0
maxItems = 5
wrap = <p>|</p>
}//3
}
}
我是typoscript的初学者,你能帮助我吗?谢谢 ! 最好的问候。
答案 0 :(得分:1)
你好我已经在40点做到并添加:
40 = CONTENT
40 {
table = tt_content
select {
orderBy = sorting
pidInList.field = uid
where = {#colPos}=0 and deleted = 0 and hidden = 0
}
renderObj = COA
renderObj {
10 = TEXT
10.stdWrap.field = header
10.stdWrap.wrap = <div class = "subtitle"><div>|</div></div>
20 = TEXT
20.stdWrap.field = bodytext
20.stdWrap.wrap = <p>|</p>
}
}
现在这是正确的。
祝你好运
答案 1 :(得分:0)
在lib.menuprincipal.20.1.NO.stdWrap.cObject.10.cObject.44点,您首先声明您的内容对象,然后将styles.content.get分配给该字段。
这不是必需的,因为styles.content.get的默认TS是:
styles.content.get = CONTENT
styles.content.get {
table = tt_content
select {
orderBy = sorting
where = {#colPos}=0
}
}
请参阅where子句中的新colPos定义。我认为这可能是一个问题。
您需要
40.renderObj = TEXT
40.renderObj.field = yourfield
有关详细信息,请参阅TYPO3 Dokumentation Section CONTENT。