PDA

Просмотр полной версии : проектирование теплейтов, делимся опытом


are
25.10.2006, 16:03
интересно у кого какой подход?

допустим, требуется сделать в typo3 простенький сайт-визитку
(обычный набор страниц с текстом)

Структура:
Home
About
Team
History
Services
Service1
Service2
Contact

Я недавно начал изучать typo3, возможно у меня совковый подход.
Что делаю:

1. разрезаю дизайн в html (вставляю необходимые маркеры ###leftBlock### ###content###, ###rightBlock и тп и закачиваю в fileadmin/TEMP)
header.html
main_block.html
footer.html

2. создаю новый темплейт для root страницы, вставляю следующий код в setup:


#/////////MAIN MENU///////////////////////

temp.mainMenu = HMENU
temp.mainMenu.wrap = <div id="mainMenu"> | </div>

temp.mainMenu.1 = TMENU
temp.mainMenu.1 {

NO.allWrap = | &nbsp;
NO.stdWrap.htmlSpecialChars = 1

ACT = 1
ACT.stdWrap.htmlSpecialChars = 1
ACT.allWrap = | &nbsp;
ACT.ATagParams = class="selected"
}

#/////////LEFT MENU///////////////////////


temp.leftMenu = HMENU
temp.leftMenu.wrap = <ul id="leftMenu"> | </ul>

temp.leftMenu.entryLevel = 1
temp.leftMenu.1 = TMENU

temp.leftMenu.1 {

NO.allWrap = <li> | </li>
NO.stdWrap.htmlSpecialChars = 1

ACT = 1
ACT.stdWrap.htmlSpecialChars = 1
ACT.allWrap = <li class="selected"> | </li>
}

temp.leftMenu.2 = TMENU
temp.leftMenu.2 {

NO.allWrap = <li>|</li>
NO.stdWrap.htmlSpecialChars = 1

ACT = 1
ACT.stdWrap.htmlSpecialChars = 1
ACT.allWrap = <li class="selected"> | </li>
}

#//////////// HEADER /////////////////////////////

temp.header = TEMPLATE
temp.header {
template = FILE
template.file = fileadmin/_temp_/1/header.html

workOnSubpart = HEADER
subparts.mainMenu < temp.mainMenu
}


#//////////// MAIN BLOCK /////////////////////////////

temp.main_block = TEMPLATE
temp.main_block {
template = FILE
template.file = fileadmin/_temp_/1/main_block.html

workOnSubpart = BODY_INNER
subparts.leftMenu < temp.leftMenu
subparts.mainContent < styles.content.get
}

#//////////// FOOTER /////////////////////////////

temp.footer = TEMPLATE
temp.footer {
template = FILE
template.file = fileadmin/_temp_/1/footer.html
}

page = PAGE
page.typeNum = 0
page.config.metaCharset = windows-1251
page.config.additionalHeaders = Content-Type:text/html;charset=windows-1251

page.stylesheet = fileadmin/css/style.css

page.10 < temp.header
page.11 < temp.main_block
page.30 < temp.footer


template определен только для рутовой странице, соотв. все остальные страницы берут по дефолту. Все замечательно работает

задача:
на некоторых страницах (не на всех) text-element в левый блок (после меню)

как лучше поступить?

filippoff
03.11.2006, 18:45
с моей точки зрения лучше использовать templavoila.
правда, я небезосновательно подозреваю, что и TV я использую крайне нерационально, особенно в плане подшаблонов, в которых никак не разберусь..

Valery Romanchev
03.11.2006, 19:03
с моей точки зрения лучше использовать templavoila.
правда, я небезосновательно подозреваю, что и TV я использую крайне нерационально, особенно в плане подшаблонов, в которых никак не разберусь..
подшаблоны я использую для print version
Как я понял - они только для этого предназначены.

Сделать в TV так, чтобы шаблон сайта собирался из нескольких кусков (так можно было в старом методе) - так вот на TV это нельзя.
Зато есть FCE - которые как раз и выполняют эту роль.

are
08.11.2006, 16:04
спасибо за ответы!

вопрос был написан до моего знакомства с TV
действительно интересная вещь

но я никак не могу избавиться от ощущения того, что с помощью этой фенечки не смогу осуществить полный контроль над теплейтами
(точно также, как создавать код html в визуальном режиме в dreamweaver'e -- все равно хочется залезть в код и подправить)

никак не могу понять, чем удобнее и мощнее применение TV
вместо "старого метода"?
можете привести простой словесный пример ситуации, когда tv предпочтительнее?

наверное это просто стереотипы, от которых нужно избавиться?

кстати, в typo3 (как бы грамотней выразиться) кэширование страниц происходит на уровне php кода или создаются конечные html странички?

Pavel Antonov
08.11.2006, 17:34
спасибо за ответы!

вопрос был написан до моего знакомства с TV
действительно интересная вещь

но я никак не могу избавиться от ощущения того, что с помощью этой фенечки не смогу осуществить полный контроль над теплейтами
(точно также, как создавать код html в визуальном режиме в dreamweaver'e -- все равно хочется залезть в код и подправить)

никак не могу понять, чем удобнее и мощнее применение TV
вместо "старого метода"?
можете привести простой словесный пример ситуации, когда tv предпочтительнее?

наверное это просто стереотипы, от которых нужно избавиться?

TV позволяет использовать FCE элементы в контенте. В остальном в сравнении со "старым методом" приемуществ я не вижу...

кстати, в typo3 (как бы грамотней выразиться) кэширование страниц происходит на уровне php кода или создаются конечные html странички?

кэширование конечных html страничек происходит на уровне PHP :D.

Если вопрос про то что, выкладывает ли TYPO3 статику, то да, если надо выкладывает.

Valery Romanchev
08.11.2006, 22:37
никак не могу понять, чем удобнее и мощнее применение TV
вместо "старого метода"?
можете привести простой словесный пример ситуации, когда tv предпочтительнее?

да, единственное преимущество TV - это использование FCE (в том числе вложенных FCE).
При этом юзер имеет нормальный интерфейс, для того чтобы всем этим рулить.
Пример - главные страницы новостных сайтов типа www.wciom.ru.