Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community |
21.08.2007, 15:33 | #1 |
Новенький
Регистрация: 21.08.2007
Сообщений: 18
|
Содержимое правой колонки в зависимости от раздела сайта
Есть сайт, на котором правая колонка может иметь 3-4 варианта, в зависимости от раздела сайта. В одном разделе это одна фотография, один номер телефона, в другом - другая фотография и другой номер. Соответственно, напрашивается решение вынести правую колонку в отдельную область и подключать нужную в зависимости от раздела. Вопрос - а как это сделать?
В Битриксе я бы сделал так - вынес бы эти 3-4 области в разные файлы, в свойствах раздела указал бы нужную область, и подключал бы в шаблоне нужную. Но это не Битрикс Пожалуйста, намекните, как здесь сделать такое. Причем чем подробнее, тем лучше Есть ли тут свойства у страниц (разделов), куда выносить (во что оформлять) эти области? Не знаю, куда копать. |
21.08.2007, 16:17 | #2 |
Senior Member
|
нужно в настройках шаблона SETUP использовать конструкцию
[PIDinRootline = 36] ... [PIDinRootline = 35] ... [PIDinRootline = 34] ... [global] Номера - id страниц. Вопрос в том, что туда записывать. Лично я вижу 2 варианта. 1. В шаблоне сайта определить область через TV под некий lib.left_block, куда посредством TypoScript вносить все что угодно - картинки, телефоны и т.п. Причем можно вынести телефоны и картинки в константы (например переменная телефона left_block_text1), а в SETUP прописать на них ссылку lib.left_block = COA lib.left_block { 10 = TEXT 10.value = {$left_block_text1} } 2. Сдлеать 2 шаблонв - один для "главной" страницы раздела, где мапить область через TV типа Content Element, а во втором шаблоне потом с использованием условий (код выше) и конструкции lib.myobject_stuff = RECORDS lib.myobject_stuff.source = 1 lib.myobject_stuff.tables = tt_content растиражировать их на все страницы раздела.. либо использовать content_slide.
__________________
Персональный блог про заработок в интернете + полезных блога про typo3 и wordpress |
22.08.2007, 07:54 | #3 |
Новенький
Регистрация: 21.08.2007
Сообщений: 18
|
Сделал по первому варианту, благо с тем, как создать новый элемент в DS и замаппить его я разобрался. Сначала определил содержимое колонки по умолчанию, потом пошли conditions. Спасибо большое! Единственное, что к этому нет доступа "обычным" пользователям - получается все жестко зашито в шаблоне, и если они сделают новый раздел, то картинку-телефон поменять не смогут - будут использоваться те, что по-умолчания.
Код:
lib.rightColumn = COA lib.rightColumn.10 = TEXT lib.rightColumn.10 { value ( <h3>Ihr Ansprechpartner</h3> <div>Jürgen Bey</div> <div><img src="/fileadmin/templates/images/JBEx.jpg" alt="JBEx" width="69" height="87"></div> <br /><br /> +49.40.3980330 ) } [PIDinRootline = 72] lib.rightColumn.10 { value ( <h3>Ihr Ansprechpartner</h3> <div>Leif Bräuer</div> <div><img src="/fileadmin/templates/images/LBR.jpg" alt="Leif" width="69" height="87"></div> <br /><br /> +49.40.398033-33 ) } [GLOBAL] |
22.08.2007, 13:30 | #4 |
Senior Member
|
Ну условия можно выносить в константы. В сэтапе оставить только
lib.rightColumn.10.value = {$some_html} И тогда объяснить человеку, есть конструкция с условиями. Добавили раздел - дописали сюда ветку с условием и кусок ХТМЛ
__________________
Персональный блог про заработок в интернете + полезных блога про typo3 и wordpress |
22.08.2007, 18:24 | #5 |
Senior Member
|
Не должен клиент копаться в TS, не должен. Лучше в свойствах страницы переопределить какое-либо текстовое поле (или новое создать с помощью спец. экстеншена) под RTE. И брать контент оттуда. Либо, что лучше, использовать kb_tv_cont_slide.
__________________
TYPO3 FAQ |
31.08.2007, 11:30 | #6 | |
Новенький
Регистрация: 21.08.2007
Сообщений: 18
|
Цитата:
Правую колонку сделал отдельным FCE с необходимыми полями - фото, телефон и т.д. Затем завел отдельный SysFolder и насоздавал там элементов типа только что созданного FCE. А затем в свойствах корневых каталогов назначил правой колонке нужные записи. Вуаля! |
|
31.08.2007, 20:25 | #7 | |
Новенький
Регистрация: 21.08.2007
Сообщений: 18
|
Цитата:
|
|
01.09.2007, 04:43 | #8 | |
Новенький
Регистрация: 21.08.2007
Сообщений: 18
|
Цитата:
|
|