Russian TYPO3 community

Russian TYPO3 community (http://forum.typo3.ru/index.php)
-   TypoScript практикум (http://forum.typo3.ru/forumdisplay.php?f=27)
-   -   проектирование теплейтов, делимся опытом (http://forum.typo3.ru/showthread.php?t=1985)

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

Цитата:

Сообщение от filippoff
с моей точки зрения лучше использовать 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

Цитата:

Сообщение от are (Сообщение 7955)
спасибо за ответы!

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

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

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

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

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

Цитата:

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

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

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

Valery Romanchev 08.11.2006 22:37

Цитата:

Сообщение от are (Сообщение 7955)

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

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


Часовой пояс GMT +4, время: 06:41.

Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot