В TYPO3 v9 вам придется делать следующее, и в каждом режиме
CSS
$GLOBALS['TBE_STYLES']['skins']['nameOfContentElement'] = array();
$GLOBALS['TBE_STYLES']['skins']['nameOfContentElement']['name'] = 'My Awesome Name';
$GLOBALS['TBE_STYLES']['skins']['nameOfContentElement']['stylesheetDirectories'] = array(
'visual' => 'yourextension/Resources/Public/Css/Backend',
'theme' => 'yourextension/Resources/Public/Css/Monokai'
);
Путь здесь (CSS) является каталогом, поэтомуон будет читать все файлы в указанном каталоге.
JS
$renderer = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\TYPO3\CMS\Core\Page\PageRender
$renderer->addJsFile('yourextension/Resources/Public/JavaScript/Backend.js', 'text/javascript', false, false, '', true, '|', false, '');
$renderer->addJsFile('yourextension/Resources/Public/JavaScript/another.js', 'text/javascript', false, false, '', false, '|', false, '');
Параметры:
addJsFile(
$file,
$type = 'text/javascript'
$compress = true,
$forceOnTop = false,
$allWrap = '',
$excludeFromConcatenation = false,
$splitChar = '|',
$async = false,
$integrity = ''
);
В больших файлах могут возникнуть некоторые проблемы с загрузкой, но если кто-нибудь сможет это подтвердить, я буду очень признателен.
Дополнительная информация:
Если вы хотите использовать jQuery от TYPO3 ( настоятельно рекомендуется, чтобы избежать конфликтов ), вы должны использовать следующее какwell:
require(["jquery"], function($) {
//your awesome function
}
Вы также можете использовать условие, чтобы убедиться, что оно загружено на сервер:
if (TYPO3_MODE === 'BE') {
$renderer = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\TYPO3\CMS\Core\Page\PageRender
...
}