首页 文章

没找到TYPO3挂钩

提问于
浏览
0

我目前正在尝试编写一个Hook来为Flexform添加额外的字段 . 因此我遵循了本教程:https://docs.typo3.org/typo3cms/extensions/news/DeveloperManual/ExtendNews/ExtendFlexforms/Index.html?fref=gc&dti=250938618364487#extend-flexforms-with-custom-fields

但是,当我转到包含Flexform选项的后端页面时,我收到以下错误:找不到类'ID \ SearchBarAdditional \ Hooks \ FlexFormHook' .

我在ext_localconf中注册了Hook,如下所示:

$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS'][\TYPO3\CMS\Core\Configuration\FlexForm\FlexFormTools::class]['flexParsing'][] = \ID\SearchBarAdditional\Hooks\FlexFormHook::class;

我的Hook文件在这里:typo3conf / ext / search_bar_additional / Classes / Hooks并以这种方式初始化:

namespace ID\SearchBarAdditional\Hooks;
class FlexFormHook { /* ... */

所以在我看来一切都在正确的地方,应该工作,但我仍然得到TYPO3 \ CMS \ Core \ Utility \ GeneralUtility :: makeInstance(“ID \ SearchBarAdditional \ Hooks \ FlexFormHook”)失败的错误 .

你们有什么想法,可能有什么不对吗?我是否必须在\ TYPO3 \ CMS \ Extbase \ Utility \ ExtensionUtility :: configurePlugin(或类似的东西)中注册Hook(因为发布的代码实际上是我唯一做过的事情)?

2 回答

  • 0

    这是典型的类加载错误 . 检查是否已将PHP命名空间添加到composer autoloading和/或 ext_emconf.php ,并确保根据PSR-4正确命名了文件名 . 如果有疑问,你可以检查由vendor / composer中的composer生成的类加载映射文件(如果你使用composer进行类加载,你绝对应该这样做) .

  • 2

    我发现了错误:我的胡克确实没有被装上 . 我试着在ext_localconf.php中使用'include'它现在正在运行 . 但由于这当然是一个非常难看的解决方案,我发布了第二个问题,如何在这里加载一个钩子:Typo3 8.X - autoload Hook

    谢谢您的帮助!!!

相关问题