TYPO3系统扩展“安装”被我自己的类覆盖

时间:2019-07-11 06:42:58

标签: typo3 extbase

我想用我自己的类 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'
    );
}

1 个答案:

答案 0 :(得分:0)

这是不可能的,因为无法通过GeneralUtility::makeInstance来调用该类。此外,该类在课程中也有说明:

  

@internal此类仅用于EXT:install和   不是TYPO3 Core API的一部分。

如果您缺少某个功能或认为自己有错误,则应在https://forge.typo3.org/projects/typo3cms-core/issues上发布一个问题