Typoscript 数据库查询的父页面的 uid 或当前页面的 pid
uid of parent page or pid of current page for Typoscript db queries
我想要我菜单的当前活动父项的 uid 列表。我得到了一个解决方案,它给了我确切的答案,但是,我的解决方案实际上是静态的,因为它不采用当前活动的 "parent" 菜单,而是采用我输入的固定值。这是我的代码:
lib.dbValues = CONTENT
lib.dbValues {
table = pages
select {
selectFields = uid
pidInList = 74
}
renderObj = TEXT
renderObj {
field = uid
wrap = |,
}
}
我的问题是,我可以动态获取当前页面的Pid或者父页面的uid吗?我真的很困扰我,我可以通过输入 "this" 来获取当前的 uid,但没有别的。
我有一个暂时使用的解决方法(直到我更好地掌握如何打字)。我只是用一个标记打破了查询条件:
lib.dbValues = CONTENT
lib.dbValues {
table = pages
select {
selectFields = uid
#pidInList = pid
where = pid NOT IN (0) OR pid IN (SELECT pid FROM pages WHERE uid = ###THIS_UID###)
markers {
THIS_UID.data = TSFE:id
}
}
renderObj = TEXT
renderObj {
field = uid
wrap = |,
}
}
有了 Where 子句,我会得到类似的东西
... WHERE pid in (0) and pid NOT IN (0) OR ...
or 前面的一切都是无关紧要的。似乎打字错误很难让您轻松获得当前页面 ID。
这对我有用:
select.where = colPos = 4
select.orderBy = sorting
select.andWhere.wrap = pid=|
select.andWhere.data = page:uid
我想要我菜单的当前活动父项的 uid 列表。我得到了一个解决方案,它给了我确切的答案,但是,我的解决方案实际上是静态的,因为它不采用当前活动的 "parent" 菜单,而是采用我输入的固定值。这是我的代码:
lib.dbValues = CONTENT
lib.dbValues {
table = pages
select {
selectFields = uid
pidInList = 74
}
renderObj = TEXT
renderObj {
field = uid
wrap = |,
}
}
我的问题是,我可以动态获取当前页面的Pid或者父页面的uid吗?我真的很困扰我,我可以通过输入 "this" 来获取当前的 uid,但没有别的。
我有一个暂时使用的解决方法(直到我更好地掌握如何打字)。我只是用一个标记打破了查询条件:
lib.dbValues = CONTENT
lib.dbValues {
table = pages
select {
selectFields = uid
#pidInList = pid
where = pid NOT IN (0) OR pid IN (SELECT pid FROM pages WHERE uid = ###THIS_UID###)
markers {
THIS_UID.data = TSFE:id
}
}
renderObj = TEXT
renderObj {
field = uid
wrap = |,
}
}
有了 Where 子句,我会得到类似的东西
... WHERE pid in (0) and pid NOT IN (0) OR ...
or 前面的一切都是无关紧要的。似乎打字错误很难让您轻松获得当前页面 ID。
这对我有用:
select.where = colPos = 4
select.orderBy = sorting
select.andWhere.wrap = pid=|
select.andWhere.data = page:uid