![]() |
Все довольно просто. В своем расширении создаете массив аналогичный TS коду. И потом передаете в cObjGetSingle().
Код:
$TS['conf'] = 'RECORDS'; Примеры того, как это используется в более сложном варианте (с подстановкой TS констант) есть в: http://typo3.org/extensions/reposito..._code/current/ http://typo3.org/extensions/reposito...marty/current/ |
а можно совместить вывод результата в HTML и после него дать TypoScript ???
|
Вопрос недопонял, в каком месте совместить, в первой или второй ваших частях?
Вызов cObjGetSingle() вернет вам HTML код, который вы должны еще вернуть TYPO3 из функции main(). Иначе он никуда не попадет. Исключение - если ваш TS объект будет типа USER_INT/COA_INT. Тогда вам вернется "маркер" (такой специальынй HTML код), который вы должны будете вернуть TYPO3 из функции main(). А сам контент будет вызван и сформирован асинхронно, без кэширование (почитайте отличие в TSRef между USER и USER_INT). |
судя по вашему посту, я могу делать все так же как и раньше в своем расширении, но перед return'om результата из main функции я могу добавить TypoScript код к результату который будет так же обработан, как если бы он был прописан в шаблоне
я прав? если да, то интересует - в какой момент будет обработан возвращаемый скрипт, в момент когда я передаю результат выполнения расширения в subparts temp.mainTemplate.subparts.CONTENT_BLOCK < plugin.tx_astro7experts_pi1 или по завершению обработки скрипта шаблона? кстати возвращаемый из расширения TypoScript должен будет сделать следущее temp.mainTemplate.subparts.MODE_BLOCK = TEXT temp.mainTemplate.subparts.MODE_BLOCK.value = tra-la-la |
Цитата:
|
Цитата:
|
Я не очень понимаю что вы имеете в виду под срабатыванием расширения. Пример я привел выше TSFE:applicationData|tx_ext_key - здесь доступ к атрибуту ->applicationData['tx_ext_key'] объекта TSFE.
Чтобы это работало проще всего ренедрить TS объект внутри самого плагина вручную вызывая cObjGetSingle() |
вот пример
я вызываю свой плагин temp.mainTemplate.subparts.CONTENT_BLOCK < plugin.tx_astro7experts_pi1 и мне надо чтоб после этого вызова в коде я мог получить значение переменной mode которая является атрибутом класса class tx_astro7experts_pi1 extends tslib_pibase и применить ее значение в сравнивании [полученая переменная = 3] выполнится то что мне нужно [end] как его можно реализовать? |
Цитата:
после парсинга шаблона ветка temp.* удаляется и соответственно плагин оттуда не вызовется Цитата:
и для пользовательских данных уже придумано место где их можно хранить и передавать (GLOBALS['TSFE']->applicationData) |
к примеру я в своем расширении сделал так
Код:
$_GLOBALS['TSFE']->applicationData['tx_astro7experts_mode'] = 'sdfgsdf'; Код:
temp.mainTemplate.subparts.BREADCRUMB = TEXT |
Часовой пояс GMT +4, время: 23:32. |
Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot