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

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

Ответ
 
Опции темы Опции просмотра
Старый 21.10.2009, 21:18   #1
AnShLv
Продвинутый
 
Регистрация: 12.01.2009
Сообщений: 90
Question Создать меню 2 уровня с такой структурой:

Как создать меню такой структуры (в 2 уровня)? Перепробовал уже все докумментированые методы, но не получаеться.
Помогите пожалуйста

<ul id="Menu1" class="MM">
<li><a href="http://www.smartmenus.org/">Home</a></li>
<li><a href="http://www.smartmenus.org/about/">About</a>

<ul>
<li><a href="http://www.smartmenus.org/about/introduction/">Introduction to SmartMenus</a></li>
<li><a href="http://www.smartmenus.org/about/compatibility/">Browser compatibility</a></li>
<li><a href="http://www.smartmenus.org/about/vasil-dinkov/">The author</a></li>
<li><a href="http://www.smartmenus.org/about/promote/">SmartMenus buttons</a></li>
</ul>
</li>

<li><a href="http://www.smartmenus.org/samples6/">Online Samples</a></li>
<li><a href="http://www.smartmenus.org/download/">Download</a></li>
<li><a href="http://www.smartmenus.org/license/">Licensing</a>
<ul>
<li><a href="http://www.smartmenus.org/license/types/">License</a></li>
<li><a href="http://www.smartmenus.org/license/purchase/">Purchase</a></li>

<li><a href="http://www.smartmenus.org/license/eula/">EULA</a></li>
</ul>
</li>
AnShLv вне форума   Ответить с цитированием
Старый 22.10.2009, 05:25   #2
shuman
Senior Member
 
Регистрация: 21.11.2007
Сообщений: 217
По умолчанию

привожу пример примерно такого меню

идея взята с typo3-snippets

yacbddm = COA
yacbddm.wrap = <ul class="primary"> | </ul>
yacbddm.10 = HMENU
yacbddm.10 {
special = list
special.value = 13
}
yacbddm.10.1 = TMENU
yacbddm.10.1 {
noBlur = 1
expAll = 1
NO.wrapItemAndSub = <li class="home"> | </li>
ACT=1
ACT.wrapItemAndSub = <li class="home active"> | </li>
}
yacbddm.20 = HMENU
yacbddm.20 {
special = directory
excludeUidList = 13
special.value = 3
}
yacbddm.20.1 = TMENU
yacbddm.20.1 {
noBlur = 1
expAll = 1
NO.wrapItemAndSub = <li> | </li>
ACT=1
ACT.wrapItemAndSub = <li class="active"> | </li>
IFSUB=1
IFSUB {
wrapItemAndSub = <li> | </li>
}
ACTIFSUB=1
ACTIFSUB {
wrapItemAndSub = <li class="active"> | </li>
}
}

# First dropdown Menu configuration
yacbddm.10.2 = TMENU
yacbddm.10.2 {
noBlur = 1
expAll = 1
wrap = <ul> | </ul>
NO.wrapItemAndSub = <li> | </li>
IFSUB=1
IFSUB {
wrapItemAndSub = <li> | </li>
}
}
yacbddm.20.2 < yacbddm.10.2
yacbddm.30.2 < yacbddm.10.2
shuman вне форума   Ответить с цитированием
Старый 22.10.2009, 12:26   #3
AnShLv
Продвинутый
 
Регистрация: 12.01.2009
Сообщений: 90
Talking Большое спасибо, работает

Спасибо, я немного переделал под свое меню, закомментировал несколько строк, и все прекрасно работает (TemplaVoila)
Может кому-то пригодится:

Код:
lib.mainMenu = COA
lib.mainMenu.wrap = <ul id="Menu1" class="MM"> | </ul>
lib.mainMenu.10 = HMENU
lib.mainMenu.10 {
#special = list
#special.value = 13
}
lib.mainMenu.10.1 = TMENU
lib.mainMenu.10.1 {
noBlur = 1
expAll = 1
NO.wrapItemAndSub = <li class="home"> | </li>
ACT=1
ACT.wrapItemAndSub = <li class="home active"> | </li>
}
lib.mainMenu.20 = HMENU
lib.mainMenu.20 {
special = directory
#excludeUidList = 13
special.value = 3
}
lib.mainMenu.20.1 = TMENU
lib.mainMenu.20.1 {
noBlur = 1
expAll = 1
NO.wrapItemAndSub = <li> | </li>
ACT=1
ACT.wrapItemAndSub = <li class="active"> | </li>
IFSUB=1
IFSUB {
wrapItemAndSub = <li> | </li>
}
ACTIFSUB=1
ACTIFSUB {
wrapItemAndSub = <li class="active"> | </li>
}
}

# First dropdown Menu configuration
lib.mainMenu.10.2 = TMENU
lib.mainMenu.10.2 {
noBlur = 1
expAll = 1
wrap = <ul> | </ul>
NO.wrapItemAndSub = <li> | </li>
IFSUB=1
IFSUB {
wrapItemAndSub = <li> | </li>
}
}
lib.mainMenu.20.2 < lib.mainMenu.10.2
lib.mainMenu.30.2 < lib.mainMenu.10.2
AnShLv вне форума   Ответить с цитированием
Старый 23.10.2009, 15:08   #4
ddt
Продвинутый
 
Регистрация: 25.08.2009
Сообщений: 36
Отправить сообщение для ddt с помощью ICQ Отправить сообщение для ddt с помощью Skype™
По умолчанию

Привет.

Помогите разобраться с простенькой менюшкой. В шаблоне разместил меню:
Код:
<div id="menu_1">
	<div class="menu1-level1-no"><a href="#">Menu item 1</a></div>
	<div class="menu1-level1-no"><a href="#">Menu item 2</a></div>
	<div class="menu1-level1-act"><a href="#">Menu item 3 (act)</a></div>
	<div class="menu1-level2-no"><a href="#">Level 2 item</a></div>
	<div class="menu1-level2-no"><a href="#">Level 2 item</a></div>
	<div class="menu1-level2-act"><a href="#">Level 2 item (act)</a></div>
	<div class="menu1-level1-no"><a href="#">Menu item 2</a></div>
</div>
В TypoScript шаблона страницы указал следующее:
Код:
# Menu 1 cObject
lib.menu_1 = HMENU
# First level menu-object, textual
lib.menu_1.1 = TMENU
lib.menu_1.1 {
# Normal state properties
NO.allWrap = <div class="menu1-level1-no"> | </div>
NO.stdWrap.htmlSpecialChars = 1
# Enable active state and set properties:
ACT = 1
ACT.stdWrap.htmlSpecialChars = 1
ACT.allWrap = <div class="menu1-level1-act"> | </div>
}
# Second level menu-object, textual
lib.menu_1.2 = TMENU
lib.menu_1.2 {
# Normal state properties
NO.allWrap = <div class="menu1-level2-no"> | </div>
NO.stdWrap.htmlSpecialChars = 1
# Enable active state and set properties:
ACT = 1
ACT.stdWrap.htmlSpecialChars = 1
ACT.allWrap = <div class="menu1-level2-act"> | </div>
}
На странице все равно отображается шаблонное меню, а не фактическая структура страниц сайта:
Код:
Menu item 1
Menu item 2
Menu item 3 (act)
Level 2 item
Level 2 item
Level 2 item (act)
Menu item 2
Что у меня неверно указано?
ddt вне форума   Ответить с цитированием
Старый 23.10.2009, 17:15   #5
cherkatel
Senior Member
 
Регистрация: 02.10.2009
Сообщений: 134
По умолчанию

Судя по lib. ... вы используете TV. Проверяйте маппинг. Если же автопарсер, то давайте весь код.
cherkatel вне форума   Ответить с цитированием
Старый 23.10.2009, 17:15   #6
Alex Podusov
Senior Member
 
Аватар для Alex Podusov
 
Регистрация: 19.06.2008
Адрес: Сергиев Посад
Сообщений: 278
Отправить сообщение для Alex Podusov с помощью ICQ
По умолчанию

ошибка в разметке области под это меню. чтобы сказать точнее - мало информации. используется TV? если да - пожалуста XML структуры данных - в студию

Цитата:
Сообщение от cherkatel Посмотреть сообщение
Судя по lib. ... вы используете TV. Проверяйте маппинг. Если же автопарсер, то давайте весь код.
не факт... код взят из на шару из руководства...
Alex Podusov вне форума   Ответить с цитированием
Старый 24.10.2009, 01:40   #7
ddt
Продвинутый
 
Регистрация: 25.08.2009
Сообщений: 36
Отправить сообщение для ddt с помощью ICQ Отправить сообщение для ddt с помощью Skype™
По умолчанию

Цитата:
Сообщение от Alex Podusov Посмотреть сообщение
ошибка в разметке области под это меню. чтобы сказать точнее - мало информации. используется TV? если да - пожалуста XML структуры данных - в студию

не факт... код взят из на шару из руководства...
Использую TV. Код меню взял из руководства. Хочу запустить пример у себя, а потом доработать под себя.

Какую XML структуры данных Вы имеете в виду? Где мне ее взять?
(пардон за такие вопросы )
ddt вне форума   Ответить с цитированием
Старый 24.10.2009, 03:29   #8
Alex Podusov
Senior Member
 
Аватар для Alex Podusov
 
Регистрация: 19.06.2008
Адрес: Сергиев Посад
Сообщений: 278
Отправить сообщение для Alex Podusov с помощью ICQ
По умолчанию

Левая колонка: Web - Templavoila; Средняя колонка - системная папка с шаблонами TV; в правом поле - клик по иконке DS шаблона, в выпавшей меню - Правка. Откроется структура DS, с блоком textarea - XML структуры данных.

Или так: в выпавшем меню после клика по иконке DS пункт Templavoila, затем отметить чекбокс Show XML, после чего отобразится таже структура DS (для просмотра, с подсветкой кода)

Для меню должен быть примерно такой код:
Код:
<field_menu type="array">
     <tx_templavoila type="array">
	<title>Динамическое меню</title>
	<sample_data type="array">
		<numIndex index="0"></numIndex>
	</sample_data>
	<eType>TypoScriptObject</eType>
	<TypoScriptObjPath>lib.menu_1</TypoScriptObjPath>
     </tx_templavoila>
</field_menu>
Отмеченное красным - обратить внимание. field_menu - заменить на название области, каким вы её назвали при разметке
Alex Podusov вне форума   Ответить с цитированием
Старый 24.10.2009, 03:34   #9
ddt
Продвинутый
 
Регистрация: 25.08.2009
Сообщений: 36
Отправить сообщение для ddt с помощью ICQ Отправить сообщение для ddt с помощью Skype™
По умолчанию

Цитата:
Сообщение от Alex Podusov Посмотреть сообщение
Левая колонка: Web - Templavoila; Средняя колонка - системная папка с шаблонами TV; в правом поле - клик по иконке DS шаблона, в выпавшей меню - Правка. Откроется структура DS, с блоком textarea - XML структуры данных.
Спасибо за подробное разъяснение!
Вот XML
Код:
<?xml version="1.0" encoding="windows-1251" standalone="yes" ?>
<T3DataStructure>
	<meta type="array">
		<langDisable>1</langDisable>
	</meta>
	<ROOT type="array">
		<tx_templavoila type="array">
			<title>ROOT</title>
			<description>Select the HTML element on the page which you want to be the overall container element for the template.</description>
		</tx_templavoila>
		<type>array</type>
		<el type="array">
			<field_menu type="array">
				<tx_templavoila>
					<title>Main menu</title>
					<sample_data type="array">
						<numIndex index="0">This is menu!</numIndex>
					</sample_data>
					<eType>TypoScriptObject</eType>
					<tags>*:inner</tags>
					<TypoScriptObjPath>lib.menu_1</TypoScriptObjPath>
				</tx_templavoila>
			</field_menu>
			<field_content type="array">
				<tx_templavoila type="array">
					<title>Paje content</title>
					<sample_data type="array">
						<numIndex index="0">Page content here!</numIndex>
					</sample_data>
					<eType>ce</eType>
					<TypoScript><![CDATA[
	10= RECORDS
	10.source.current=1
	10.tables = tt_content
	10.wrap = <!--TYPO3SEARCH_begin--> | <!--TYPO3SEARCH_end-->
                    ]]></TypoScript>
					<oldStyleColumnNumber type="integer">0</oldStyleColumnNumber>
				</tx_templavoila>
				<TCEforms type="array">
					<config type="array">
						<type>group</type>
						<internal_type>db</internal_type>
						<allowed>tt_content</allowed>
						<size>5</size>
						<maxitems>200</maxitems>
						<minitems>0</minitems>
						<multiple>1</multiple>
						<show_thumbs>1</show_thumbs>
					</config>
					<label>Paje content</label>
				</TCEforms>
			</field_content>
		</el>
	</ROOT>
</T3DataStructure>
ddt вне форума   Ответить с цитированием
Старый 24.10.2009, 03:42   #10
Alex Podusov
Senior Member
 
Аватар для Alex Podusov
 
Регистрация: 19.06.2008
Адрес: Сергиев Посад
Сообщений: 278
Отправить сообщение для Alex Podusov с помощью ICQ
По умолчанию

Всё верно... а в область контента вставка происходит?
Alex Podusov вне форума   Ответить с цитированием
Ответ

Теги
2 уровня, меню, typoscript


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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Рендеринг меню в таблицу AleXUnder Общие вопросы 3 26.03.2009 17:55
Создать ещё одно меню, как? djolejek Общие вопросы 6 03.12.2008 17:29
Как организовать меню 2-го и более уровня отдельно от первого? Mike10581 TypoScript практикум 4 11.12.2007 18:46
Не получается отобразить меню второго уровня... Vit Brevis Общие вопросы 5 22.11.2006 17:52
бекграунд для меню второго уровня Vitamin Общие вопросы 2 23.03.2006 10:32


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


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

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