#typo3
#typo3
Вопрос:
Я только что создал идентификатор eID в Typo3. Я не могу понять, как получить доступ к данным конфигурации для моего плагина из экземпляра Typo3.
Я пробовал код по ссылке, но он не хочет работать. Я продолжаю получать исключение «Шаблон TypoScript не найден! » при вызове » $TSFE->getConfigArray(); «
http://lists.typo3.org/pipermail/typo3-dev/2006-December/021392.html
Есть идеи?
Спасибо.
Ответ №1:
В режиме eID загружается только небольшая часть обычного интерфейса TYPO3. К сожалению, TypoScript не загружен. Чтобы по-прежнему получать доступ к конфигурации TypoScript, вам необходимо вручную загрузить компоненты, необходимые для этого. К сожалению, это может быть немного неприятно. Поэтому в некоторых случаях может быть проще просто загрузить страницу, содержащую один плагин, который больше ничего не содержит (без заголовков и т. Д.).
Если вы хотите загрузить шаблоны TypoScript самостоятельно, вы можете попробовать что-то вроде следующего:
require_once(PATH_tslib.'class.tslib_fe.php');
require_once(PATH_t3lib.'class.t3lib_userauth.php' );
require_once(PATH_tslib.'class.tslib_feuserauth.php');
require_once(PATH_t3lib.'class.t3lib_cs.php');
require_once(PATH_tslib.'class.tslib_content.php') ;
require_once(PATH_t3lib.'class.t3lib_tstemplate.php');
require_once(PATH_t3lib.'class.t3lib_page.php');
$TSFEclassName = t3lib_div::makeInstanceClassName('tslib_fe');
$id = isset($HTTP_GET_VARS['id'])?$HTTP_GET_VARS['id']:0;
$GLOBALS['TSFE'] = new $TSFEclassName($TYPO3_CONF_VARS, $id, '0', 1, '','','','');
$GLOBALS['TSFE']->connectToMySQL();
$GLOBALS['TSFE']->initFEuser();
$GLOBALS['TSFE']->fetch_the_id();
$GLOBALS['TSFE']->getPageAndRootline();
$GLOBALS['TSFE']->initTemplate();
$GLOBALS['TSFE']->tmpl->getFileName_backPath = PATH_site;
$GLOBALS['TSFE']->forceTemplateParsing = 1;
$GLOBALS['TSFE']->getConfigArray();
$cObj = t3lib_div::makeInstance('tslib_cObj');
Это инициализирует TSFE и cObj, но также используется для загрузки и анализа шаблонов TypoScript. Возможно, вам потребуется внести некоторые изменения (возможно, удалить некоторые вещи)
Код взят из одного из комментариев к следующему сообщению в блоге: http://sebastiaandejonge.com/blog/articles/2010/september/21/bringing-ajax-to-your-frontend-plugins /
Удачи!
Комментарии:
1. Я посмотрю на это после выходных. Спасибо: D