gpt4 book ai didi

arrays - Typoscript 数组并在 FLUID 中使用它们

转载 作者:行者123 更新时间:2023-12-02 22:04:13 25 4
gpt4 key购买 nike

假设我有一个包含以下网页的项目(请看屏幕截图)

enter image description here

Red、Blue、Post、Blog Page 的uid 分别为1、2、3、4。

现在,我想在 Typoscript 中定义一个数组或某种列表,其中将包含所有根网页的标题。而这个数组,我可以在我的 FLUID 模板中使用它并显示所有标题。

例子:

  • 在 TypoScript 中

    arrayOfTitles= # uid为1,2,3,4的页面标题

  • 在流体页面

    <f:for each="{arrayOfTitles}" as="foo">
    <h1> {foo} </h1>
    </f:for>

这可能吗

最佳答案

自然界的 TypoScript 是一个数组,所以做你想做的最简单的方法就是在你的模板中添加一些像这样的集合:

plugin.tx_yourext {
settings {
domains {
10 = one
20 = two
30 = three
40 = four
}
}
}

所以你可以直接在 View 中使用它

<f:for each="{settings.domains}" as="title">
<h1>{title}</h1>
</f:for>

另一方面,也许最好执行简单的数据库查询以从数据库中获取这些页面,然后创建简单的数组并将其作为参数分配给 View 。在这种情况下,如果标题发生变化,您无需更改 TS。

SQL伪代码:

SELECT title FROM pages WHERE is_siteroot = 1 AND deleted = 0 AND hidden = 0 ORDER BY sorting ASC

编辑:

您也可以使用 TypoScript 中的常见 HMENU(避免使用 View )来完成此操作,只需使用 special=list 创建菜单对象即可(当然,你应该给你的根页面的 uid 而不是 35、56)。

最后用<h1>|</h1>包裹每一项并添加选项:doNotLinkIt=1 ,这个片段很可能会起作用(从我的脑海中写出来,所以你需要检查它):

lib.myTitles = HMENU
lib.myTitles {
special = list
special.value = 1,2,3,4

1 = TMENU
1.NO.wrapItemAndSub = <h1>|</h1>
1.NO.ATagTitle.field = title
1.NO.doNotLinkIt = 1
}

关于arrays - Typoscript 数组并在 FLUID 中使用它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16393091/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com