如何为简单的Get-Parameter设置routeEnhancers?

问题描述 投票:1回答:1

我正在尝试为简单的Get参数创建routeEnhancer:

/?pageNumber = 1&cHash = ...

此参数(包括cHash)由多页站点地图(纯TypoScript)的页面浏览器生成,可以使用以下简化的TypoScript进行模拟:

page.10 = COA
page.10{
    10 = LOAD_REGISTER
    10{
        pageNumber.cObject = TEXT
        pageNumber.cObject.value = 0
        pageNumber.cObject.override.data= GP:pageNumber
        pageNumber.cObject.wrap = (|+1)
        pageNumber.prioriCalc = intval
    }
    20 = TEXT
    20{
        data = register:pageNumber
        typolink {
            parameter.data = TSFE:id
            additionalParams.data = register:pageNumber
            additionalParams.wrap = &pageNumber=|
        }
    }
}

没有路由增强器的结果:

  • 在第0页上(根页面“ /”):<a href="/?pageNumber=1&amp;cHash=...">1</a>
  • 在第1页:<a href="/?pageNumber=2&amp;cHash=...">2</a>
  • 在第2页上:<a href="/?pageNumber=3&amp;cHash=...">3</a>

依此类推。符合预期。

我的路线增强器尝试:

routeEnhancers:
  PageBrowser:
    type: Simple
    routePath: '/page/{page_number}'
    requirements:
      page_number: '[0-9]'
    _arguments:
      page_number: 'pageNumber'

此路线增强器的结果:

  • 在第0页:<a href="/page/1/">1</a>
  • 在第1页上,它不幸地保持不变<a href="/page/1/">1</a>

似乎编码有效,但是解码失败。我在做什么错?

typo3 typo3-9.x
1个回答
0
投票

您正在寻找的是:

© www.soinside.com 2019 - 2024. All rights reserved.