2016-12-28 4 views
1

Я хотел бы создать раскрывающееся окно входа в меню. Когда пользователи наводят «вход» в меню, он показывает регистрационную форму. Я нашел здесь пример: https://www.planet-sports.com/en/TYPO3: выпадающее окно входа в систему (меню)

Я довольно новичок в TYPO3, поэтому не знаю, с чего начать. Есть ли способ сделать это только с Typoscript или мне нужно изменить navbar с помощью html и javascript? Каков наилучший способ сделать это?

EDIT: Я использую собственную тему (не сделал сам)

Меню вызывается в файле "header.html", как это:

<nav class="collapse navbar-collapse navbar-main-collapse" role="navigation"> 
     <f:cObject typoscriptObjectPath="menu.navbar" /> 
    </nav> 

TypoScript для навигационной панели:

menu.navbar = HMENU 
menu.navbar { 
    entryLevel = 0 
    excludeUidList = 112 

    1 = TMENU 
    1 { 
     expAll = 1 
     stdWrap.dataWrap = <ul class="nav navbar-nav colum-{register:count_menuItems}">|</ul> 

     NO { 
      htmlSpecialChars = 1 
      wrapItemAndSub = <li id="navbar{field:uid}" class="first" >|</li> |*| <li id="navbar{field:uid}">|</li> |*| <li id="navbar{field:uid}" class="last navbar-right">|</li> 
      wrapItemAndSub.insertData = 1 
      ATagTitle.field = description // subtitle 
     } 

     ACT = 1 
     ACT { 
      htmlSpecialChars = 1 
      wrapItemAndSub = <li id="navbar{field:uid}" class="first active">|</li> |*| <li id="navbar{field:uid}" class="active">|</li> |*| <li id="navbar{field:uid}" class="last active navbar-right">|</li> 
      wrapItemAndSub.insertData = 1 
      ATagTitle.field = description // subtitle 
     } 

     IFSUB = 1 
     IFSUB { 
      ATagTitle.field = description // subtitle 
      wrapItemAndSub = <li id="navbar{field:uid}" class="dropdown first">|</li> |*| <li id="navbar{field:uid}" class="dropdown">|</li> |*| <li id="navbar{field:uid}" class="dropdown last">|</li> 
      wrapItemAndSub.insertData = 1 
      stdWrap.htmlSpecialChars = 1 
      ATagParams = class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false" 
      linkWrap = |<span class="caret"></span> 
      ATagBeforeWrap = 1 
     } 

     ACTIFSUB < .IFSUB 
     ACTIFSUB = 1 
     ACTIFSUB.wrapItemAndSub = <li id="navbar{field:uid}" class="dropdown first active">|</li> |*| <li id="navbar{field:uid}" class="dropdown active">|</li> |*| <li id="navbar{field:uid}" class="dropdown last active">|</li> 
    } 

    2 = TMENU 
    2 { 
     expAll = 1 
     wrap = <ul class="dropdown-menu">|</ul> 

     NO.htmlSpecialChars = 1 
     NO.wrapItemAndSub = |*| <li class="odd">|</li> || <li class="even">|</li> |*| 

     ACT = 1 
     ACT.htmlSpecialChars = 1 
     ACT.wrapItemAndSub = |*| <li class="odd active">|</li> || <li class="even active">|</li> |*| 
    } 

    3 = TMENU 
    3 { 
     expAll = 1 
     wrap = <ul class="dropdown-submenu">|</ul> 

     NO.htmlSpecialChars = 1 
     NO.wrapItemAndSub = <li class="first">|</li> |*| <li>|</li> |*| <li class="last">|</li> 

     ACT = 1 
     ACT.htmlSpecialChars = 1 
     ACT.wrapItemAndSub = <li class="first active">|</li> |*| <li class="active">|</li> |*| <li class="active last">|</li> 
    } 

    4 = TMENU 
    4 { 
     wrap = <ul class="dropdown-submenu-1">|</ul> 

     NO.htmlSpecialChars = 1 
     NO.wrapItemAndSub = <li class="first">|</li> |*| <li>|</li> |*| <li class="last">|</li> 

     ACT = 1 
     ACT.htmlSpecialChars = 1 
     ACT.wrapItemAndSub = <li class="first active">|</li> |*| <li class="active">|</li> |*| <li class="active last">|</li> 
    } 
} 

ответ

2

Прежде всего: видимость слоя можно обрабатывать с помощью CSS (даже затухать/исчезать или взорваться/взорваться). просто поместите весь контент в div, который включен в триггерный div.
Как вы получаете свой контент в этом div, зависит от того, как вы строите свою страницу. жидкий шаблон, маркер-шаблон, чистый типограф.
Существует несколько способов получить форму входа (и другой контент) в div: создать ее с помощью typoscript, получить контент со страницы исправления, получить содержимое из специального столбца, который унаследован ко всем подстраницам (слайду).

Просто будьте более конкретными, какова ваша текущая конфигурация, с чем вы знакомы и чего хотите достичь.

+0

благодарит за ваш ответ. Я думал о шаблоне жидкости (после ). Я мог бы использовать форму входа из расширения «fe_users» и регистрационную форму от «femanager». – user6800816

+0

Меню - это то, что вы могли бы представить как переменную для шаблона жидкости. нет необходимости называть его через cObject-VH. кроме того, вы четко не указали, какой путь вы хотите использовать для включения формы входа/плагина. Включение плагинов через typoscript (либо для переменной жидкости, либо для cObject-VH) может быть сложным, поскольку некоторые параметры настраиваются легче, если у вас есть обычный элемент содержимого. поэтому я рекомендую включать через специальный столбец, который наследуется ко всем подстраницам. –

+0

Я добавил более подробную информацию о моей конфигурации в OP. Извините, я не знаю, что вы имеете в виду под «специальной колонкой». Наверное, мне нужно добавить элемент в меню с помощью Typoscript? – user6800816