任务1。在TypoScript中,我需要获取给定页面 id
Task2的页面标题。{$my_page_uid}
此页面标题应根据当前语言接收
我需要像temp.pTitle这样的形式的标题,所以我可以然后 page.10 < temp.pTitle
任务1。在TypoScript中,我需要获取给定页面 id
Task2的页面标题。{$my_page_uid}
此页面标题应根据当前语言接收
我需要像temp.pTitle这样的形式的标题,所以我可以然后 page.10 < temp.pTitle
第一眼我觉得:哈哈!那是微不足道的……但实际上并非如此。这是我在德国论坛上找到的第一部分的巧妙解决方案:
temp.pTitle = HMENU
temp.pTitle {
special = list
special.value = {$my_page_uid}
1 = TMENU
1 {
NO {
doNotLinkIt = 1
}
}
}
不知道这是否解决了语言部分,但它应该。
temp.pTitle = TEXT
temp.pTitle.data = DB:pages:{$my_page_uid}:title
lib.pagetitle = RECORDS
lib.pagetitle {
source.data = page:uid
tables = pages
conf.pages = TEXT
conf.pages.field = nav_title
}
获取当前页面标题:
lib.pagetitle = TEXT
lib.pagetitle.field=title
还有一个更简单的解决方案..
10 = TYPOLINK
10.parameter = [your_page_id]
当您省略 .value 或 .field 时,它会自动将页面标题作为值。这甚至适用于多种语言。
重要提示:这个答案在 2011 年有效,TypoScript 显然已经改变了……</p>
愿这对你有帮助
在您的流体模板中
<f:cObject typoscriptObjectPath="lib.pagetitle" data='your page id'/>
在打字稿中
lib.pagetitle = HMENU
lib.pagetitle {
special = list
special.value.current = 1
1 = TMENU
1 {
NO {
doNotLinkIt = 1
}
}
}
让我知道这不起作用我有其他方法!
我制作了这样一个脚本并且在没有 VHS 功能的情况下工作:v.page.info(在 TYPO3 v9 上):
例子:
<f:cObject typoscriptObjectPath="lib.pageInfo" data="{pageUid: '48', pageField: 'subtitle'}" />
lib.pageInfo = COA
lib.pageInfo {
5 = LOAD_REGISTER
5 {
## Set the content's field (default: title):
pageField.cObject = TEXT
pageField.cObject {
field = pageField
ifEmpty.data = title
}
## Allows to override the current page ID:
pageUid.cObject = TEXT
pageUid.cObject {
field = pageUid
ifEmpty.data = TSFE:id
}
}
20 = RECORDS
20 {
source.data = register:pageUid
tables = pages
dontCheckPid = 1
conf.pages = TEXT
conf.pages.field.data = register:pageField
}
90 = RESTORE_REGISTER }