TYPO3:将 Formhandler 添加到新闻扩展

TYPO3: Add Formhandler to News Extension

我正在使用 TYPO3 新闻系统和 Formhandler Extension

我有一些表格,它们在每个页面上都能正常工作,但我无法将其插入新闻详情页面。

每个表单都保存到一个临时变量中,如下所示:

temp.contactform < plugin.tx_formhandler_pi1

(然后按照sender_email等我没有在这里添加的所有设置。)

所以在其他页面上,我像这样在“模板”菜单下插入表单并插入插件:

page.10.variables.form < temp.contactform

在布局文件中我只是调用:<f:format.raw>{form}</f:format.raw>

表单出现并且工作正常。

我尝试在详细信息页面上插入 TypoScript 并直接插入 plugin.tx_news,然后在 Detail.html 中写入 <f:format.raw>{form}</f:format.raw>,但它没有插入我的表单。

对我来说,新闻插件似乎不允许自定义临时工。因为如果我尝试插入表单以外的任何内容,e。 G。简单的文本,作为临时文件,也不会插入到详细信息页面中。

Google 也没有进一步帮助我。你能告诉我是否可以将 formhandler 和 News 连接到一个页面中吗?

您不能在新闻模板中使用可变变量 form,因为您的变量是在页面上下文中定义的,而新闻上下文不知道它。

所有 TypoScript temp.* 对象在渲染开始之前都会被删除,因此您不能在 f:cObject viewhelper 中使用任何 temp.*。 (改用 lib.* 对象,甚至可以复制它:lib.contactform < temp.contactform

您应该像在任何其他页面上一样在页面中插入您的表单,因为详细信息页面就像任何其他页面一样,除了新闻插件的内容只显示一条记录。

您的问题可能是:
对于详细信息页面,进一步 URL 参数决定显示的记录。如果您的表单不遵守这些参数,只是通过 uid 调用页面,则新闻插件不知道要显示哪条记录,而是会给出错误消息。


由于 ext:formhandler 自 2017 年 11 月起已过时,您应该将表单迁移到受支持的扩展程序。至少当你更新你的 TYPO3 时,你可能使用 7LTS,它最近也离开了 public 支持。