嗨,我几周前开始使用TYPO 3,我想在网站启动时运行我自己的PHP脚本。所以我把我的PHP文件名为“Testfile.php”到typo 3conf/ext/myextension/Classes文件夹。我的代码:
namespace Example\MyExtension;
class Testfile
{
public function doStuff() {
return 'I did stuff';
}
}
之后,我把这个typoscript代码到我的页面在后端。
page = PAGE
page.10 = USER
page.10.userFunc = Example\MyExtension\Testfile->doStuff
在刷新我的页面后,我希望得到文本“我做了一些事情”,但只得到一个空白屏幕。
你能解释一下我做错了什么吗?
4条答案
按热度按时间ltqd579y1#
你是否在composer.json中声明了自动加载指令,是否触发了
composer du
或其他会重新生成类加载器文件的指令?bn31dyow2#
对于composer不需要的扩展,您必须将扩展类的基础添加到根路径中composer.json的autoload部分,例如。
"autoload": { "psr-4": { Example\\MyExtension\\": "public/typo3conf/ext/my_extension/Classes", } }
然后调用
composer dumpautoload
,你应该没事了。4szc88ey3#
你在 composer 模式吗???
在composer模式下,按照Chris上面描述的那样在composer.json中添加autoload部分应该可以工作,但是如果你是在composer模式下,我不知道你如何添加php代码,因为includeLibs已经消失了
mnemlml84#
在composer中声明“autoload”,然后运行
composer dumpautoload
古德勒克