我想用我自己的类 VENDOR \ Examples \ Xclass \ Backend覆盖TYPO3系统扩展“ instal”的方法->类 TYPO3 \ CMS \ Install \ SystemEnvironment \ Check \ Check ,但不起作用。
我可以没有问题地使用系统扩展中的其他类,例如 TYPO3 \ CMS \ Backend \ Controller \ LoginController 或 TYPO3 \ CMS \ Backend \ Template \ DocumentTemplate XLASS覆盖的帮助。
通常可以从自己的扩展名覆盖安装工具类吗?
<?php
defined('TYPO3_MODE') || die('Access denied.');
if (TYPO3_MODE === 'BE') {
$GLOBALS['TYPO3_CONF_VARS']['SYS']['Objects']['TYPO3\\CMS\\Install\\SystemEnvironment\\Check'] = array(
'className' => 'ALEX\\Examples\\Xclass\\Backend\\Check'
);
$GLOBALS['TYPO3_CONF_VARS']['SYS']['Objects']['TYPO3\\CMS\\Backend\\Controller\\LoginController'] = array(
'className' => 'ALEX\\Examples\\Xclass\\Backend\\LoginController'
);
$GLOBALS['TYPO3_CONF_VARS']['SYS']['Objects']['TYPO3\\CMS\\Backend\\Template\\DocumentTemplate'] = array(
'className' => 'ALEX\\Examples\\Xclass\\Backend\\DocumentTemplate'
);
}
答案 0 :(得分:0)
这是不可能的,因为无法通过GeneralUtility::makeInstance
来调用该类。此外,该类在课程中也有说明:
@internal此类仅用于EXT:install和 不是TYPO3 Core API的一部分。
如果您缺少某个功能或认为自己有错误,则应在https://forge.typo3.org/projects/typo3cms-core/issues上发布一个问题