![]() |
Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community |
![]() |
#1 |
Senior Member
Регистрация: 13.12.2006
Адрес: ~msk
Сообщений: 277
|
![]()
Уважаемые, в доках пишется, что TS обрабатывается последовательно по строкам.
Но так ли это применительно к объектам USER? Код:
lib.test1 = USER lib.test1 { userFunc = user_view->test1 } lib.test2 = USER lib.test2 { userFunc = user_view->test2 } test2 отрабатывает первым. Хочется понять как такое может быть и почему? ps Оба определения не обязательно в одном конфиги, могут последовательно подгружаться файлы .ts Заранее спасибо за помощь. |
![]() |
![]() |
![]() |
#2 |
Senior Member
|
![]()
TS обрабатывается не в порялке написания, а в порядке подключения в рендеринге.
если lib.test2 подключен на странице "выше" чем lib.test1, то он будет обработан первым |
![]() |
![]() |
![]() |
#3 |
Senior Member
Регистрация: 13.12.2006
Адрес: ~msk
Сообщений: 277
|
![]()
Спасибо, так оно и есть.
Хотя для TV столкнулся с несколько иным поведением - порядок обработки соответствует порядку в DS, а не в TS. Последний раз редактировалось c0d3r; 04.07.2007 в 11:35 |
![]() |
![]() |
![]() |
#4 |
Senior Member
Регистрация: 13.12.2006
Адрес: ~msk
Сообщений: 277
|
![]()
Возвращаясь к напечатанному. Всё-таки столкнулся с непонятным
![]() Есть блок контента и пейджеры вверху и внизу. Вот как это прописано в DS: ... mainContent mainTopPager mainBottomPager ... Вот как это прописано в TS setup: Код:
lib.mainContent = USER_INT lib.mainContent { userFunc = user_view->mainContent } // пейджеры нужны только на определённых страницах [PIDinRootline = {$PAGE_ID1}] [PIDinRootline = {$PAGE_ID2}] ... lib.mainTopPager = USER_INT lib.mainTopPager { userFunc = user_view->mainPager } lib.mainBottomPager = USER_INT lib.mainBottomPager { userFunc = user_view->mainPager } [GLOBAL] tx_templavoila_pi1->processdatavalues: field_maincontent tx_templavoila_pi1->processdatavalues: field_maintoppager tx_templavoila_pi1->processdatavalues: field_mainbottompager Но если вставить отладочные эхи в оба метода, то получается, что mainPager отрабатывает раньше, чем mainContent. Кто-нибудь сталкивался с таким? Мне важно, чтобы mainContent отрабатывался раньше mainPager. Ещё вопрос можно ли второму, нижнему пейджеру, передать контент ($content) из первого, верхнего с помощью TS? Сейчас там тупо через PHP static свойство... Заранее благодарю за любую помощь! |
![]() |
![]() |
![]() |
#5 |
Senior Member
|
![]()
А почему бы не сделать так:
Код:
lib.mainContent = USER_INT lib.mainContent { userFunc = user_view->justMain whoiam = content } // пейджеры нужны только на определённых страницах [PIDinRootline = {$PAGE_ID1}] [PIDinRootline = {$PAGE_ID2}] ... lib.mainTopPager = USER_INT lib.mainTopPager { userFunc = user_view->justMain whoiam = pagerTop } lib.mainBottomPager = USER_INT lib.mainBottomPager { userFunc = user_view->justMain whoiam = pagerBottom } [GLOBAL] PHP код:
__________________
TYPO3 FAQ Последний раз редактировалось void; 29.08.2007 в 17:11 |
![]() |
![]() |
![]() |
#6 | |
Senior Member
Регистрация: 13.12.2006
Адрес: ~msk
Сообщений: 277
|
![]()
Большое спасибо за пример, это реальная помощь. Можно сделать и так. Я уже подумал, что можно объединить в одну функцию, правда, тогда придётся немного перемапить страницу, ну что ж, можно и перемапить ради результата
![]() А по поводу второго вопроса есть опыт? ![]() Цитата:
|
|
![]() |
![]() |
![]() |
#8 |
Senior Member
Регистрация: 13.12.2006
Адрес: ~msk
Сообщений: 277
|
![]()
Благодарю за помощь!
|
![]() |
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Многократная инициализация user_ объектов PHP | c0d3r | Общие вопросы | 9 | 17.06.2007 11:42 |
проблемы с FE User Registration | MDG | Общие вопросы | 1 | 22.08.2006 16:26 |
Новое решение для user list archive | Valery Romanchev | Новости TYPO3-разработки | 0 | 27.03.2006 04:51 |