PDA

Просмотр полной версии : Как связываются шаблоны TS и TV?


_3AMnoTEX_
31.01.2011, 17:18
Всем привет. Простите за дурацкий вопрос. Я создаю шаблон TS (который в секции Template), создаю шаблон TV (DS/TO), привязываю страницу к DS/TO. Но каким таким волшебным образом он понимает, какой шаблон TS применить к странице? Как оно там внутри происходит? MTB, FTB читал, да уже и сайт-то почти доделал, но вот это до сих пор для меня тайна покрытая мраком, и она мне покоя не дает.
Еще раз извиняюсь за глупость вопроса, ткните носом, где посмотреть

Андрей Аксенов
01.02.2011, 10:28
Шаблон TS - это по сути массив настроек TYPO3, вот в этих настройках ты говоришь, что за формирование внешнего вида сайта (внешнего интерфейса) отвечает расширение темплавуаля. А вот уже в этом расширении ты сначала создаешь DS - описание каркаса элементов на сайте и их работы, а затем TO - частный объект DS, в котором описывается привязка каркаса элементов DS к определенным тегам в шаблоне HTML.
Вот и получается - TYPO3 настроена на формирование страниц в темплавуаля через TS, а сама разметка страницы делается уже в темплавуаля, где DS - это все, что в принципе может быть в данном шаблоне страницы, а TS - это уже конктретный шаблон на основе каркаса DS (то, чего нет в DS невозможно привязать к элементам конкретного шаблона HTML через TS).
А уж КАК это реализовано на PHP - это в код расширения темплавуаля...

_3AMnoTEX_
01.02.2011, 11:40
Для себя вопрос снял. Сразу не догадался в бд заглянуть... Оказалось все очень просто (в первом приближении. если копать глубже, наверняка будет не так просто): в таблице sys_template есть поле pid, содержащее номер страницы, с которым этот шаблон связан. Темплавуаля берет настройки typo script из этого шаблона, "на основе каркаса DS", который мы указали, делает разметку - и вуаля :)

Valery Romanchev
01.02.2011, 14:20
Для себя вопрос снял. Сразу не догадался в бд заглянуть... Оказалось все очень просто (в первом приближении. если копать глубже, наверняка будет не так просто): в таблице sys_template есть поле pid, содержащее номер страницы, с которым этот шаблон связан. Темплавуаля берет настройки typo script из этого шаблона, "на основе каркаса DS", который мы указали, делает разметку - и вуаля :)
Есть один момент, на который стоит обратить внимание
темплавоила сама вызывается именно в этом TS шаблоне

page = PAGE
page.typeNum = 0
page.10 = USER
page.10.userFunc = tx_templavoila_pi1->main_page


Т.е. TS-шаблон первичен, а Темплавоила - вторична