TYPO3 系统扩展 "install" 用我自己的 class 覆盖

TYPO3 system extension "install" overwrite with my own class

我想用我自己的 class VENDOR\Examples\Xclass\Backend\Check 但它不起作用。

系统扩展中的其他class例如TYPO3\CMS\Backend\Controller\LoginControllerTYPO3\CMS\Backend\Template\DocumentTemplate我可以在 XLASS 覆盖的帮助下没有问题吗?

通常可以从自己的扩展中覆盖安装工具 classes?

<?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'
    );
}

这是不可能的,因为 class 不是通过 GeneralUtility::makeInstance 调用的。此外,它也在 class:

中说明

@internal This class is only meant to be used within EXT:install and is not part of the TYPO3 Core API.

如果您缺少某个功能或认为您遇到了错误,您应该在 https://forge.typo3.org/projects/typo3cms-core/issues

上提出问题