Select 通过 Typoscript 查询来自 Typo3 数据库的 url
Select urls from Typo3 Database via Typoscript query
首先是我的目标:我想创建一个包含指向内部页面的链接的列表。此列表必须按创建日期排序(数据库中的 crdate)
为了实现这个,我写了下面的代码:
99 = CONTENT
99.table = pages
99.select {
pidInList = root,-1
selectFields = url
orderBy = crdate
}
可悲的是,这returns没什么。
为了进行调试,我使用了不同的属性。
有
99 = CONTENT
99.table = tt_content
99.select {
pidInList = 1
orderBy = crdate
}
我克隆了我的根页面。我从中得到了所有记录。
所以我知道所有页面记录都应该存储在页面 table 和 url.
我做错了什么?
其他信息:Typo3 8.7,不,默认后端元素对我不起作用,是的,我必须在打字稿中这样做
提前感谢您的任何建议。
pages
记录中的字段 url
通常不包含该页面的 url。
它仅用于 external URL
类型的页面,因此此页面的内部 link 可以转发到 url.
如果您想要一个包含所有页面的 link 列表,您需要为这些页面创建 link:
99 = CONTENT
99 {
table = pages
select {
// your selection here
}
renderObj = TEXT
renderObj {
typolink {
parameter.field = uid
}
}
}
这将为您提供一个完整的 link 列表(如果用 <li>|</li>
包裹 renderObj
),页面标题为 link 文本。
如果您只想要 urls,您可以添加:
typolink {
returnLast = url
}
不换行就是一个没有分隔的长字符串。
编辑:
99 = CONTENT
99 {
table = pages
select {
pidInList = 69
orderBy = crdate desc
}
wrap = <ul>|</ul>
renderObj = TEXT
renderObj {
wrap = <li>|</li>
typolink {
parameter.field = uid
}
if.isFalse.cObject = CONTENT
if.isFalse.cObject {
table = pages
select {
// this 'uid' is from context of current pages record we have selected above
pidInList.field = uid
// this 'uid' is the field from the records we are selecting here
selectFields = uid
}
renderObj = TEXT
// this 'uid' is the selected field above
// a field in the pages record of the subquery to decide if there are child pages
renderObj.field = uid
# renderObj.wrap = |,
}
}
}
首先是我的目标:我想创建一个包含指向内部页面的链接的列表。此列表必须按创建日期排序(数据库中的 crdate)
为了实现这个,我写了下面的代码:
99 = CONTENT
99.table = pages
99.select {
pidInList = root,-1
selectFields = url
orderBy = crdate
}
可悲的是,这returns没什么。 为了进行调试,我使用了不同的属性。 有
99 = CONTENT
99.table = tt_content
99.select {
pidInList = 1
orderBy = crdate
}
我克隆了我的根页面。我从中得到了所有记录。 所以我知道所有页面记录都应该存储在页面 table 和 url.
我做错了什么?
其他信息:Typo3 8.7,不,默认后端元素对我不起作用,是的,我必须在打字稿中这样做
提前感谢您的任何建议。
pages
记录中的字段 url
通常不包含该页面的 url。
它仅用于 external URL
类型的页面,因此此页面的内部 link 可以转发到 url.
如果您想要一个包含所有页面的 link 列表,您需要为这些页面创建 link:
99 = CONTENT
99 {
table = pages
select {
// your selection here
}
renderObj = TEXT
renderObj {
typolink {
parameter.field = uid
}
}
}
这将为您提供一个完整的 link 列表(如果用 <li>|</li>
包裹 renderObj
),页面标题为 link 文本。
如果您只想要 urls,您可以添加:
typolink {
returnLast = url
}
不换行就是一个没有分隔的长字符串。
编辑:
99 = CONTENT
99 {
table = pages
select {
pidInList = 69
orderBy = crdate desc
}
wrap = <ul>|</ul>
renderObj = TEXT
renderObj {
wrap = <li>|</li>
typolink {
parameter.field = uid
}
if.isFalse.cObject = CONTENT
if.isFalse.cObject {
table = pages
select {
// this 'uid' is from context of current pages record we have selected above
pidInList.field = uid
// this 'uid' is the field from the records we are selecting here
selectFields = uid
}
renderObj = TEXT
// this 'uid' is the selected field above
// a field in the pages record of the subquery to decide if there are child pages
renderObj.field = uid
# renderObj.wrap = |,
}
}
}