Russian TYPO3 community Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community  

Вернуться   Russian TYPO3 community > Обсуждение общих технических вопросов > Общие вопросы

Ответ
 
Опции темы Опции просмотра
Старый 21.08.2007, 15:33   #1
Alexey Kuzminich
Новенький
 
Регистрация: 21.08.2007
Сообщений: 18
Question Содержимое правой колонки в зависимости от раздела сайта

Есть сайт, на котором правая колонка может иметь 3-4 варианта, в зависимости от раздела сайта. В одном разделе это одна фотография, один номер телефона, в другом - другая фотография и другой номер. Соответственно, напрашивается решение вынести правую колонку в отдельную область и подключать нужную в зависимости от раздела. Вопрос - а как это сделать?

В Битриксе я бы сделал так - вынес бы эти 3-4 области в разные файлы, в свойствах раздела указал бы нужную область, и подключал бы в шаблоне нужную. Но это не Битрикс

Пожалуйста, намекните, как здесь сделать такое. Причем чем подробнее, тем лучше Есть ли тут свойства у страниц (разделов), куда выносить (во что оформлять) эти области? Не знаю, куда копать.
Alexey Kuzminich вне форума   Ответить с цитированием
Старый 21.08.2007, 16:17   #2
Tod
Senior Member
 
Аватар для Tod
 
Регистрация: 25.03.2006
Сообщений: 627
Отправить сообщение для Tod с помощью ICQ
По умолчанию

нужно в настройках шаблона 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
Tod вне форума   Ответить с цитированием
Старый 22.08.2007, 07:54   #3
Alexey Kuzminich
Новенький
 
Регистрация: 21.08.2007
Сообщений: 18
По умолчанию

Сделал по первому варианту, благо с тем, как создать новый элемент в DS и замаппить его я разобрался. Сначала определил содержимое колонки по умолчанию, потом пошли conditions. Спасибо большое! Единственное, что к этому нет доступа "обычным" пользователям - получается все жестко зашито в шаблоне, и если они сделают новый раздел, то картинку-телефон поменять не смогут - будут использоваться те, что по-умолчания.
Код:
lib.rightColumn = COA
lib.rightColumn.10 = TEXT
lib.rightColumn.10 {
  value (
    <h3>Ihr Ansprechpartner</h3>
    <div>J&uuml;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]
Alexey Kuzminich вне форума   Ответить с цитированием
Старый 22.08.2007, 13:30   #4
Tod
Senior Member
 
Аватар для Tod
 
Регистрация: 25.03.2006
Сообщений: 627
Отправить сообщение для Tod с помощью ICQ
По умолчанию

Ну условия можно выносить в константы. В сэтапе оставить только
lib.rightColumn.10.value = {$some_html}
И тогда объяснить человеку, есть конструкция с условиями. Добавили раздел - дописали сюда ветку с условием и кусок ХТМЛ
__________________
Персональный блог про заработок в интернете + полезных блога про typo3 и wordpress
Tod вне форума   Ответить с цитированием
Старый 22.08.2007, 18:24   #5
void
Senior Member
 
Аватар для void
 
Регистрация: 14.03.2006
Адрес: Russia, Penza
Сообщений: 1,504
Отправить сообщение для void с помощью ICQ
По умолчанию

Не должен клиент копаться в TS, не должен. Лучше в свойствах страницы переопределить какое-либо текстовое поле (или новое создать с помощью спец. экстеншена) под RTE. И брать контент оттуда. Либо, что лучше, использовать kb_tv_cont_slide.
__________________
TYPO3 FAQ
void вне форума   Ответить с цитированием
Старый 31.08.2007, 11:30   #6
Alexey Kuzminich
Новенький
 
Регистрация: 21.08.2007
Сообщений: 18
По умолчанию

Цитата:
Либо, что лучше, использовать kb_tv_cont_slide.
Во, то что надо! Получилось вообще круто - спасибо!

Правую колонку сделал отдельным FCE с необходимыми полями - фото, телефон и т.д. Затем завел отдельный SysFolder и насоздавал там элементов типа только что созданного FCE. А затем в свойствах корневых каталогов назначил правой колонке нужные записи. Вуаля!
Alexey Kuzminich вне форума   Ответить с цитированием
Старый 31.08.2007, 20:25   #7
Alexey Kuzminich
Новенький
 
Регистрация: 21.08.2007
Сообщений: 18
По умолчанию

Цитата:
Во, то что надо! Получилось вообще круто - спасибо!
Только похоже что это расширение не работает под php5 :-( Кто-нибудь пробовал его с php5?
Alexey Kuzminich вне форума   Ответить с цитированием
Старый 01.09.2007, 04:43   #8
Alexey Kuzminich
Новенький
 
Регистрация: 21.08.2007
Сообщений: 18
По умолчанию

Цитата:
Только похоже что это расширение не работает под php5
Блин, извиняюсь, все работает - напортачил c TS
Alexey Kuzminich вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB code is Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


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


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

Хостинг и техническая поддержка: TYPO3 Лаборатория