[英]Typo3: Constant as Page UID
我有分配給各種頁面ID的常量列表(例如,myConstant = 22)。 現在,我想替換以下鏈接
<f:link.page pageUid="22" >Link</f:link.page>
用類似的東西
<f:link.page pageUid="{myConstant}" >Link</f:link.page>
我還沒有找到合適的語法來做到這一點。 有什么幫助嗎?
我認為您不能直接訪問常量,但可以在ts-setup中使用常量。
使用plugin.tx_myplugin.settings.myPid = {$myConstant}
在ts設置中,您可以使用{settings.myPid}
訪問插件中的pid
如果您不是使用插件而是TS FluidTemplate,則可以按以下方式為其分配它們:
page = PAGE
page {
10 = FLUIDTEMPLATE
10 {
file = fileadmin/templates/Home.html
variables {
pidList {
myConstant = {$myConstant}
myConstant2 = {$myConstant2}
}
}
}
}
<f:link.page pageUid="{pidList.myConstant}" >Link</f:link.page>
如果使用的是FLUIDTEMPLATE拼寫對象,則可以在TypoScript中執行以下操作:
lib.output = FLUIDTEMPLATE
lib.output {
# ...
variables {
myPageID = {$myConstant}
}
# ...
}
在流體模板中,您可以根據需要使用變量:
<f:link.page pageUid="{myPageID}" >Link</f:link.page>
如果模板是由控制器操作中的擴展呈現的,則可以將值分配給插件的設置: plugin.tx_<extkey>[_pi1].settings.myPageID = {$myConstant}
。 然后,您可以像這樣在流體模板中使用它:
<f:link.page pageUid="{settings.myPageID}">Link</f:link.page>
無論如何,您都可以使用擴展名vhs
的f:cObject
ViewHelper或v:var.typoscript
ViewHelper將該值分配給某個TypoScript對象,並在模板中讀取該值。
我在t3 7.6中嘗試過類似的操作,如果要在頁面流體模板的某處使用ts常量(在ts-constants字段中定義為oneConst),則必須執行以下操作:
page.10 = FLUIDTEMPLATE
page.10 {
variables{
const_one=TEXT
const_one.value={$oneConst}
}
}
}
沒有TEXT定義,您將無法獲得該值 。 在模板中訪問它:
{const_one}
提示:我無法在數組中組織const。 喜歡
const{
one=TEXT
one.value={..}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.