Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Typo3 类型3:常量为页面UID_Typo3_Fluid - Fatal编程技术网

Typo3 类型3:常量为页面UID

Typo3 类型3:常量为页面UID,typo3,fluid,Typo3,Fluid,我有一个分配给各种页面ID的常量列表(例如myConstant=22)。现在我想替换以下链接 <f:link.page pageUid="22" >Link</f:link.page> 链接 有点像 <f:link.page pageUid="{myConstant}" >Link</f:link.page> 链接 我还没有找到正确的语法来这样做。有什么帮助吗?我想您不能直接访问常量,但可以在ts设置中使用常量 使用ts设置中的plugin

我有一个分配给各种页面ID的常量列表(例如myConstant=22)。现在我想替换以下链接

<f:link.page pageUid="22" >Link</f:link.page>
链接
有点像

<f:link.page pageUid="{myConstant}" >Link</f:link.page>
链接

我还没有找到正确的语法来这样做。有什么帮助吗?

我想您不能直接访问常量,但可以在ts设置中使用常量

使用ts设置中的
plugin.tx\u myplugin.settings.myPid={$myConstant}
可以使用
{settings.myPid}

如果您使用的不是插件而是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>
<f:link.page pageUid="{settings.myPageID}">Link</f:link.page>
page.10 = FLUIDTEMPLATE
page.10 {         
    variables{
        const_one=TEXT
        const_one.value={$oneConst}
        }
    }
}
page=page
页面{
10=流体模板
10 {
file=fileadmin/templates/Home.html
变数{
pidList{
myConstant={$myConstant}
myConstant2={$myConstant2}
}
}
}
}
链接

我认为您不能直接访问常量,但可以在ts设置中使用常量

使用ts设置中的
plugin.tx\u myplugin.settings.myPid={$myConstant}
可以使用
{settings.myPid}

如果您使用的不是插件而是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>
<f:link.page pageUid="{settings.myPageID}">Link</f:link.page>
page.10 = FLUIDTEMPLATE
page.10 {         
    variables{
        const_one=TEXT
        const_one.value={$oneConst}
        }
    }
}
page=page
页面{
10=流体模板
10 {
file=fileadmin/templates/Home.html
变数{
pidList{
myConstant={$myConstant}
myConstant2={$myConstant2}
}
}
}
}
链接

如果您使用的是FLUIDTEMPLATE typoscript对象,可以在typoscript中执行以下操作:

lib.output = FLUIDTEMPLATE
lib.output {
#   ...
    variables {
        myPageID = {$myConstant}
    }
#   ...
}
在流体模板中,可以使用所需的变量:

<f:link.page pageUid="{myPageID}" >Link</f:link.page>
链接
如果模板由控制器操作中的扩展呈现,则可以将该值分配给插件的设置:
plugin.tx\u[\ u pi1].settings.myPageID={$myConstant}
。然后可以在流体模板中使用它,如下所示:

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>
<f:link.page pageUid="{settings.myPageID}">Link</f:link.page>
page.10 = FLUIDTEMPLATE
page.10 {         
    variables{
        const_one=TEXT
        const_one.value={$oneConst}
        }
    }
}
链接

在任何情况下,您都可以将该值指定给某个TypoScript对象,并通过使用扩展名
vhs

中的
f:cObject
ViewHelper或
v:var.TypoScript
ViewHelper在模板中读取该值。如果您使用的是FLUIDTEMPLATE TypoScript对象,则可以在TypoScript中执行以下操作:

lib.output = FLUIDTEMPLATE
lib.output {
#   ...
    variables {
        myPageID = {$myConstant}
    }
#   ...
}
在流体模板中,可以使用所需的变量:

<f:link.page pageUid="{myPageID}" >Link</f:link.page>
链接
如果模板由控制器操作中的扩展呈现,则可以将该值分配给插件的设置:
plugin.tx\u[\ u pi1].settings.myPageID={$myConstant}
。然后可以在流体模板中使用它,如下所示:

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>
<f:link.page pageUid="{settings.myPageID}">Link</f:link.page>
page.10 = FLUIDTEMPLATE
page.10 {         
    variables{
        const_one=TEXT
        const_one.value={$oneConst}
        }
    }
}
链接

在任何情况下,您都可以将该值指定给某个TypoScript对象,并通过使用扩展名
vhs

f:cObjectViewHelper或
v:var.TypoScript
ViewHelper在模板中读取该值,如果您想使用ts常量,我尝试过类似于t37.6的方法(在ts常量字段中定义为oneConst)在页面流体模板中的某个位置,必须执行以下操作:

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>
<f:link.page pageUid="{settings.myPageID}">Link</f:link.page>
page.10 = FLUIDTEMPLATE
page.10 {         
    variables{
        const_one=TEXT
        const_one.value={$oneConst}
        }
    }
}
如果没有文本定义,则无法获取该值。请在模板中访问该值:

{const_one} 
提示:我无法在数组中组织常量。例如

const{
   one=TEXT
   one.value={..}
}

我在T37.6中尝试过类似的方法,如果您想在页面流体模板的某个地方使用ts常量(在ts常量字段中定义为oneConst),则必须执行以下操作:

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>
<f:link.page pageUid="{settings.myPageID}">Link</f:link.page>
page.10 = FLUIDTEMPLATE
page.10 {         
    variables{
        const_one=TEXT
        const_one.value={$oneConst}
        }
    }
}
如果没有文本定义,则无法获取该值。请在模板中访问该值:

{const_one} 
提示:我无法在数组中组织常量。例如

const{
   one=TEXT
   one.value={..}
}

这似乎是一个很好的解决方案,但我注意到这将始终呈现指向当前页面id的链接,这可能是因为
myPageID
的某些地方设置不正确。请尝试使用
{[settings.]myPageID}
输出它(仅在需要时添加“设置”)。这似乎是一个很好的解决方案,但我注意到这将始终呈现指向当前页面id的链接,这可能是因为
myPageID
的某些地方设置不正确。请尝试使用
{[settings.]myPageID}
输出它(仅在需要时添加“设置”)。