You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Typo3 11 Plain FAQ扩展可读URL配置错误排查求助

Typo3 Plain FAQ扩展可读URL配置错误排查

以下是你配置文件中的问题及修正方案:

存在的问题

  • 插件名称大小写错误:Typo3 Extbase插件标识区分大小写,Plain FAQ的标准插件名称是PiDetail,你写的Pidetail(小写d)无法匹配到正确的插件实例。
  • 参数映射逻辑错误:路由参数{faq}应该对应FAQ实体的唯一标识(如UID或自定义slug),而你映射的@widget_0/currentPage是分页组件的页码参数,这会导致详情页无法正确接收FAQ的ID参数。
  • 冗余的requirements配置:你配置了page参数的正则验证,但当前路由中并没有{page}参数,该配置完全多余。
  • 默认控制器的不合理性:详情页Faq::detail必须接收faq参数才能正常渲染,设置它为默认控制器会导致直接访问插件路由时因缺少参数报错。

修正后的配置示例

PlainFaq:
  type: Extbase
  extension: PlainFaq
  plugin: PiDetail
  routes:
      # FAQ列表页路由(可选,用于展示所有FAQ)
      - { routePath: '/list', _controller: 'Faq::list' }
      # FAQ详情页路由,{faq}对应实体的UID或slug
      - { routePath: '/detail/{faq}', _controller: 'Faq::detail', _arguments: {'faq': 'faq'} }
  defaultController: 'Faq::list'
  defaults:
    # 如果需要列表页分页,可添加默认页码
    page: '1'
  requirements:
    # 为faq参数添加正则,限制为数字(如果用UID)或字母数字组合(如果用slug)
    faq: '\d+'
    # 如果保留分页参数,再添加page的验证
    page: '\d+'

额外说明

  1. 如果你的FAQ配置了友好slug(而非UID),需要把requirements里的faq正则改成匹配slug的规则,比如'[a-zA-Z0-9\-]+'。
  2. 确保在Typo3后台的插件配置中,已启用“使用可读URL”的相关选项,并且站点的路由配置已正确包含该扩展的路由文件。

内容的提问来源于stack exchange,提问作者Sani Singer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 04:12:44