TYPO3 javascript 带有打字错误的页脚,WHERE 子句中断 SELECT 功能

TYPO3 javascript footer with typoscript, WHERE clause breaks SELECT functionality

我有一个奇怪的页面结构,子页面的 colPos = 0 用作其父页面的内容...这些页面的动画需要父页面页脚中的代码,所以我添加了字段 tx_add_animation_code in table tt_content 需要收集此代码。

setup.txt:

# footer script
page.footerData {
    # collect subpages
    5 = LOAD_REGISTER
    5 {
        pageIds.cObject = CONTENT
        pageIds.cObject {
            table = pages
            select {
                pidInList = this
                recursive = 0
                selectFields = uid
                where = {#no_search}=0
            }
            renderObj = TEXT
            renderObj {
                field = uid
                required = 1
                wrap = |,
            }
        }
    }
    # open javascript
    10 = TEXT
    10.value (
        <script type="text/javascript">

    )
    # test id collection
    25 = TEXT
    25 {
        data = register:pageIds
        noTrimWrap (
|
/* subpage Ids: | */
|
        )
    }
    # collect animation code from CE's on subpages
    20 = CONTENT
    20 {
        table = tt_content
        select {
            pidInList.data = register:pageIds
            # THIS LINE BREAKS FUNCTIONALITY
            where = {#colPos}=0
        }
        renderObj = COA
        renderObj {
            10 = TEXT
            10.stdWrap.field = tx_add_animation_code
        }
        if {
            value = pagets__homepage,pagets__onepage
            isInList.data = TSFE:page|backend_layout
        }
    }
    # close javascript
    30 = TEXT
    30.value (

        </script>
    )
    90 = RESTORE_REGISTER
}

where = {#colPos}=0破坏了功能,如果我不包含它,当然,该字段是从所有内容元素中收集的...

问题是什么?

请确保子页面上确实有一些内容元素的 colPos=0。请注意,一些扩展,如 gridelements 或其他 multicol 扩展会将其子元素的 colPos 设置为负值,如 -67,因此它们将不再匹配 select-statement。