Typo3将所有子页面的内容列为父页面的内容

时间:2013-05-02 23:59:06

标签: menu parent-child typo3 typoscript

正如标题所说,我需要在其自己的内容之后列出父页面上所有子页面的内容。或者我真正需要的是,一页内容和一个链接到内容的不同标题的菜单。例如athe父母页面内容:

**Parent Head**
parent text
*first subhead*
first subtext
*second subhead*
second subtext

,菜单应如下所示:

- 第一个分目

- 第二个小标题

我认为如果父页面“收集”子页面的内容会更容易。 另一个解决方案是,子页面将链接到外部URL,以及父页面的不同内容的特定 c -ID。但我认为这对网站所有者来说并不容易,他不知道在网页源代码中哪里可以找到正确的 c -ID。 那你怎么做到的?或者我如何通过子页面内容实现这一点?

编辑:现在有一个解决方案。只需要修复,子菜单将在没有子页面的情况下显示。 以下是代码:

temp.contentnav = CONTENT
temp.contentnav {
  table = tt_content
  select {
    pidInList = 7
    orderBy = sorting
    where = colPos=0
    languageField=sys_language_uid

  }
  renderObj = TEXT
  renderObj {
    field = header
    wrap= <li>|</li>

    typolink.parameter.field=pid
    typolink.parameter.dataWrap=|#{field:uid}
    typolink.ATagParams = class="linkClass"
    if.isTrue.field=header
  }

  wrap = <ul id="submenuClass"> | </ul>
}

page.10.marks.MENU.2.NO.after.cObject < temp.contentnav

2 个答案:

答案 0 :(得分:5)

尝试这样的事情

temp.pageIds = HMENU 
temp.pageIds.entryLevel = 1 
temp.pageIds.1 = TMENU 
temp.pageIds.1 { 
  NO.stdWrap.field = uid 
  NO.allWrap = |, 
  NO.doNotLinkIt = 1 
} 
lib.container = CONTENT 
lib.container.table = tt_content 
lib.container.select { 
  pidInList.cObject < temp.pageIds 
}

答案 1 :(得分:0)

有一个内容元素“菜单/站点地图”,可以选择使用内容呈现子页面。

如果您想通过TypoScript进行操作,请渲染菜单,然后将菜单项替换为内容。

  # Pseudocode on menuitem
  # assuming you are using css_styled_content
  1.allStdWrap.cObject < styles.content.get
  # Set pid for CONTENT object from styles.content.get to the uid of the page
  # which gets rendered
  1.allStdWrap.cObject.select.pidInList.data = uid

无法为您提供工作片段。