![]() |
Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community |
|
![]() |
#1 | |
Senior Member
Регистрация: 25.12.2009
Сообщений: 106
|
![]() Цитата:
узнать режим работы расширения я смогу лишь в самом расширении обработав переменные из RealUrl из TS и из FF и только после этого я буду знать как отображать ту отдельно расположенную часть интерфейса если есть возможность ее решить другими способами - буду рад выслушать их |
|
![]() |
![]() |
![]() |
#2 |
Senior Member
|
![]()
Было бы проще, что бы ваше расширение само показывало ту, вторую часть. Тогда вы в своем коде можете обрабатывать нужные вам условия.
Вы, например, можете в коде своего расширения создавать и выводить "результат" куска TS кода. Так проще задействовать стандартные средства TYPO3 из вашего PHP кода (например, http://typo3.toaster-schwerin.de/typ.../msg00030.html) Можно и в шаблоне условия прописывать. Каких-то особенных переменных из RealURL не существует - существуют переменные из GET, а RealURL лишь промежуточное звено, о котором ни TS ни ваш PHP код не знает. Если его отключить - сайт будет работать точно также, только URL будут выглядеть по другому. Единственная проблема - сложность ваших условий. Пременные из GET/POST использовать просто: Код:
[globalVar = GP:print > 0] Кроме того, TS-условия создают дополнительные копии контента в кэше. Чем больше условий, тем больше (и медленней) будет кэш TYPO3. |
![]() |
![]() |
![]() |
#3 |
Senior Member
Регистрация: 25.12.2009
Сообщений: 106
|
![]()
в моем случае в зависимости от 2 параметра в URL 3 и 4 могут держать в себе разные переменные для этого расширения, что не позволит в тот момент знать что же я хочу проверить
а вот насчет вывода из своего расширения часть темплейта для другой области страницы - довольно интересно. это может решить многие мои проблемы, не только текущую можно об этом поподорбнее? |
![]() |
![]() |
![]() |
#4 |
Senior Member
|
![]()
Все довольно просто. В своем расширении создаете массив аналогичный TS коду. И потом передаете в cObjGetSingle().
Код:
$TS['conf'] = 'RECORDS'; $TS['conf.']['tables']='tt_content'; $TS['conf.']['source'] = '151,99,113,199,163,208'; $TS['conf.']['dontCheckPid'] = 1; $TS['conf.']['conf.']['tt_content'] = 'TEXT'; $TS['conf.']['conf.']['tt_content.']['field'] = 'bodytext'; $content = $this->cObj->cObjGetSingle($TS['conf'],$TS['conf.']); Примеры того, как это используется в более сложном варианте (с подстановкой TS констант) есть в: http://typo3.org/extensions/reposito..._code/current/ http://typo3.org/extensions/reposito...marty/current/ |
![]() |
![]() |
![]() |
#5 |
Senior Member
Регистрация: 25.12.2009
Сообщений: 106
|
![]()
а можно совместить вывод результата в HTML и после него дать TypoScript ???
|
![]() |
![]() |
![]() |
#6 |
Senior Member
|
![]()
Вопрос недопонял, в каком месте совместить, в первой или второй ваших частях?
Вызов cObjGetSingle() вернет вам HTML код, который вы должны еще вернуть TYPO3 из функции main(). Иначе он никуда не попадет. Исключение - если ваш TS объект будет типа USER_INT/COA_INT. Тогда вам вернется "маркер" (такой специальынй HTML код), который вы должны будете вернуть TYPO3 из функции main(). А сам контент будет вызван и сформирован асинхронно, без кэширование (почитайте отличие в TSRef между USER и USER_INT). |
![]() |
![]() |
![]() |
#7 |
Senior Member
Регистрация: 25.12.2009
Сообщений: 106
|
![]()
судя по вашему посту, я могу делать все так же как и раньше в своем расширении, но перед 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 |
![]() |
![]() |
![]() |
Опции темы | |
Опции просмотра | |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
multilanguage extension | typo27 | Разработка расширений / TYPO3 extension development | 3 | 23.09.2008 16:40 |
DR Wiki - Typo3 Wiki extension Extension key | Костик | Общие вопросы | 1 | 07.08.2008 17:48 |
Extension Manager не работает | Игорь Ф. | Общие вопросы | 38 | 25.06.2008 19:14 |
TYPO3 Fatal Error: Extension key "sv" was NOT loaded! | Tod | Общие вопросы | 2 | 28.10.2007 21:53 |
Multiple vulnerabilities in extension ve_guestbook | RSS Bot | Новости TYPO3 (на английском) | 0 | 02.08.2007 12:51 |