Hallo tobli noch mal auf diesem Weg.
Vorweg kurz: als ich damals diese Erweiterung geschrieben habe dachte ich nicht, dass diese sich mal groß verbreitet... Sie war am Anfang nur für den Gebrauch auf ein paar von mir betreuten Websites entstanden und auf Wunsch eines Bekannten ins TER geladen worden.
So nun zu deinem Problem:
Wenn du, wie von Julian.Hofmann erwähnt, das Typoscript der Erweiterung eingebunden hast sollte es reichen das Plugin in den entsprechenden Subpart oder Marker (hier mal nav genannt) zu kopieren:
page.10.subparts.nav < plugin.freeCssDropDownMenu.horizontal
page.10.marker.nav < plugin.freeCssDropDownMenu.horizontal
Bei einem Fluid Tempalte natürlich über:
page.10.variables.nav < plugin.freeCssDropDownMenu.horizontal
und
<!--ab Typo3 4.6 / Fluid 1.4-->
<f:format.raw>{nav}</f:format.raw>
<!--bis Typo3 4.5.x / Fluid 1.3-->
<f:format.html parseFuncTSPath="">{nav}</f:format.html>
Die Einstellungen, die du oben geschrieben hast gehören nicht ins Setup sondern in die Constants.
plugin.freeCssDropDownMenu.page = page
plugin.freeCssDropDownMenu.headerDataId = 9876
plugin.freeCssDropDownMenu.horizontal = 1
#...
Bei der Gelegenheit als Tip:
Fang jetzt mit Fluid als Template Engine an.
Dann hast du es leichter bei einegnen Erweiterungen oder dem Anpassen von Neuen Erweiterungs Templates an deine Bedürfnisse.
Hallo jank,
danke erstmal für deine Antwort.
Ich habe ein Yaml-Template welches ich ein wenig gemappt habe. Der BEriech für die NAvigation heißt lib.field_navigation
page.10.subparts.nav < plugin.freeCssDropDownMenu.horizontal
page.10.marker.nav < plugin.freeCssDropDownMenu.horizontal
habe ich nun in das ROOT Setup reingespeichert. Macht dies was, wenn dort bereits
page = PAGE
page.10 = USER
page.10.userFunc = tx_templavoila_pi1->main_page
page.10.disableExplosivePreview = 1
steht? oder muss ich dann aus page.10.subparts.nav -> page.20.subparts.nav machen?
plugin.freeCssDropDownMenu.page = page
plugin.freeCssDropDownMenu.headerDataId = 9876
plugin.freeCssDropDownMenu.horizontal = 1
#...
habe ich nun ins das ROOT unter Konstanten gespeichert.
Da ich ein Yaml Tempalte habe kann ich dies ja nicht wie heir beschreiben einbauen, sondern?
page.10.variables.nav < plugin.freeCssDropDownMenu.horizontal
und
<!--ab Typo3 4.6 / Fluid 1.4-->
<f:format.raw>{nav}</f:format.raw>
<!--bis Typo3 4.5.x / Fluid 1.3-->
<f:format.html parseFuncTSPath="">{nav}</f:format.html>
Gruß tobli
PS: gibts nen tipp für gute Fluid Templates oder auch Erläuterungen? Dies schaue ich mir dann an, wenn es mit dem Yaml-Template läuft.
tobli schrieb
...
Macht dies was, wenn dort bereits
page = PAGE
page.10 = USER
page.10.userFunc = tx_templavoila_pi1->main_page
page.10.disableExplosivePreview = 1
steht?
...
Du hast bis jetzt nicht erwähnt, dass du TemplaVoila einsetzt...
Kann es sein, dass du neu mit Typo3 anfängst?
Jetzt von 0 auf 100 zu erklären wie man in Typo3 ein Template erstellt sprengt diesen Threads, aber es gibt ein paar gute Tutorials...
Hallo,
ich hab nur irgendwo geschreiben, dass ich nen Yaml-Template gemappt habe. Vergass dann wohl zu erwähnen das ich das mit Templavoila (dachte man kann nur mit dem mappen).
Ich verwende seit längerem schon Typo 3 und hab mir nach und nach nach Videotutorials was aufgebaut. Allerdigns ist dies ja sehr umfangreich. Nach dem Neuaufbau mit 4.6 kommen ein wenig tücken auf, wie das Einbinden deiner Extention in meinem gemappten Template.
Das Menü erscheint allerdings noch nicht.
OK das mit dem "Mappen" hab ich nicht direkt mit TV verknüpft.
Typo3 ist in der Tat umfangreich. Hier hilft meistens ein Blick in die TSREF.
Und on Top nun noch TV.
Für TV musst du in den constanten
plugin.freeCssDropDownMenu.templavoila = 1
einstellen.
Darurch wird das Plugin in lib.freeCssDropDownMenu.horizontal kopiert.
Diese lib dann per als TyposcriptObjectPath Mappen.
<T3DataStructure> extensions
<TypoScriptObjPath>
string
TypoScript object path pointing to a TypoScript Template Content Object which will render the content represented by the element.
Very useful if you want to insert a menu which is defined by eg. “lib.myMenu” in the TypoScript Template of a website.
Hallo,
der Bereich in meiner Template.html welche ich gemappt habe,schaut so aus:
<!-- begin: main navigation #nav -->
<div id="nav" role="navigation">
<div class="hlist">
<ul>
<li class="active"><strong>Button 1</strong></li>
<li><a href="#">Button 2</a></li>
<li><a href="#">Button 3</a></li>
<li><a href="#">Button 4</a></li>
<li><a href="#">Button 5</a></li>
</ul>
</div>
</div>
<!-- end: main navigation -->
Das ganze habe ich Navigation genannt. die lib lautet: lib.field_navigation und ist als TypScript-Objektpfad gespeichert.
Hier muss ich nun aus dem lib.field_navigation einfach lib.freeCssDropDownMenu.horizontal machen? Wenn ja, dann sehe ich noch immer kein Menü bei mir.
Gruß tobli
Normalerweise sollte es kein Problem sein das Menü in TV zu mappen.
Es besteht ja nur aus Typoscript und CSS/JS.
Du kannst mal im Typo3 ObjectBrowser durch die Struktur des Typoscript Templates gehen und schauen ob der gemappte Objectpath auch existiert.
Der müsste ja ein HMENU mit TMENU Ebenen sein.
Hallo,
in der Setup-Wurzel taucht unter lib. -> freeCssDropDownMenu
[hoizontal] = HMENU
[1] = TMENU
[2] = TMENU
[3] = TMENU
[4] = TMENU
[5] = TMENU
Allerdings erhalte ich oben schon einer Warnung, was auch immer dies bedeuten mag. (evtl nicht zugewiesen oder sowas??)
Fehler und Warnungen
2: Line 4897: Object Name String, "lib.freeCssDropDownMenu.horizontal" was not preceded by any operator, =<>({
Gruß Tobli
Hallo tobli,
ich bekomme keinerlei Fehlermeldung im Object Browser.
Habe es soeben getestet.
Das ganze sollte so aussehen wie im Anhang.

Hallo jank,
anbei mein Screenshot von dem Bereich
Gruß Tobli

Dann schau mal im Template Analyser was in Zeile 4897 steht und woher die kommt.
Hallo jank,
die besagte Zeile ist leer.
4884:
4885: [GLOBAL]
4886: page.shortcutIcon = fileadmin/templates/images/favicon.ico
4887: page.meta {
4888: author = XXX
4889: publisher = XXX
4890: reply-to = XXX@XXX.de
4891: robots = index,follow
4892: revisit-after = 30 days
4893: copyright = XXX, TXXX
4894: MSSmartTagsPreventParsing = true
4895: imagetoolbar = false
4896: }
4897:
4898: lib.freeCssDropDownMenu.horizontal - ERROR: Line 4898: Object Name String, "lib.freeCssDropDownMenu.horizontal" was not preceded by any operator, =<>({
Das sieht so aus als überschreibst du in deinem Template das TS von der Extension.
Deswegen auch die Fehlermeldung.
Lösch mal
lib.freeCssDropDownMenu.horizontal
aus dem Setup von deinem Template.
Hallo jank,
Fehlermeldung ist nun weg, Navigation erscheint noch immer nich 🙁
Gruß tobli
Leider habe ich keine Ahnung warum es immer noch nicht sichtbar wird. Vielleicht mal mit einem einfachen TEXT Objekt testen und das dann mit mappen...
lib.test = TEXT
lib.test.value = Foo Bar!
Hallo jank,
vllt. könntest du dir dies mal etwas genauer ansehen? Ich könnte dir Zugangsdaten geben oder via Teamviewer und MSN oder ICQ?
Ich verzweifle nämlich echt langsam. vllt. liste ich auch heir nochmal alles auf, was ich wo eingetragen habe. habe eben mein template auch nochmals neu gemappt.
gemappt habe ich diesen Bereich der template.html
<!-- begin: main navigation #nav -->
<div id="nav" role="navigation">
<div class="hlist">
<ul>
<li class="active"><strong>Button 1</strong></li>
<li><a href="#">Button 2</a></li>
<li><a href="#">Button 3</a></li>
<li><a href="#">Button 4</a></li>
<li><a href="#">Button 5</a></li>
</ul>
</div>
</div>
<!-- end: main navigation -->
auf den Bereich div class hlist auf den Typoscriptnamen lib.freecssdropdownmenu (mehr ging nicht)
ROOT
CONFIG
PAGE
NAVIGATION
EXTENTION
dem ROOT habe ich das dazugehörige CSS zugewiesen
im KONSTANTEN von ROOT steht:
plugin.freeCssDropDownMenu.themeCss = typo3conf/ext/freecssdropdownmenu/res/css/dropdown/themes/_template/default.css
plugin.freeCssDropDownMenu.page = page
plugin.freeCssDropDownMenu.headerDataId = 9876
plugin.freeCssDropDownMenu.horizontal = 1
plugin.freeCssDropDownMenu.horizontal.start = 1
plugin.freeCssDropDownMenu.horizontal.exclude =
plugin.freeCssDropDownMenu.vertical = 0
plugin.freeCssDropDownMenu.vertical.start = 1
plugin.freeCssDropDownMenu.vertical.exclude =
plugin.freeCssDropDownMenu.templavoila = 1
im SETUP von ROOT:
page = PAGE
page.10 = USER
page.10.userFunc = tx_templavoila_pi1->main_page
page.10.disableExplosivePreview = 1
page.10.subparts.nav < plugin.freeCssDropDownMenu.horizontal
page.10.marker.nav < plugin.freeCssDropDownMenu.horizontal
im SETUP von NAVIGATION steht:
plugin.freeCssDropDownMenu.horizontal = HMENU
plugin.freeCssDropDownMenu.horizontal {
special = directory
special.value = {$plugin.freeCssDropDownMenu.horizontal.start}
excludeUidList = {$plugin.freeCssDropDownMenu.horizontal.exclude}
if {
value = {$plugin.freeCssDropDownMenu.horizontal}
equals = 1
}
1 = TMENU
1 {
wrap = <ul class="dropdown dropdown-horizontal"> | </ul>
expAll = 1
noBlur = 1
NO = 1
NO {
ATagTitle.field = abstract // description // subtitle // title
wrapItemAndSub = |*| <li> | </li> |*| <li class="last"> | </li>
stdWrap.htmlSpecialChars = 1
}
IFSUB < .NO
IFSUB {
wrapItemAndSub = |*| <li class="dir"> | </li> |*| <li class="dir last"> | </li>
}
}
2 < .1
2.wrap = <ul> | </ul>
3 < .2
4 < .2
5 < .2
}
Gruß Tobli
ICh weiß nicht wie deine default.css aussieht, aber ich hab bei den konstanten da eine eigene für das design gesetzt, nimm die doch bei dir mal bei den konstanten den eintrag themeCss raus.
Hallo,
danke auch für deinen Tipp. Habe das themeCss kurz entfernt. Hat aber auch nichts gebracht.
Gruß Tobli
Wie ich sehe stimmt da so einiges nicht.
Wenn du TV nutzt musst du das Menü natürlich auch mit TV mappen und nicht mit
page.10.subparts.nav < plugin.freeCssDropDownMenu.horizontal
page.10.marker.nav < plugin.freeCssDropDownMenu.horizontal
versuchen in ein Standard TEMPLATE einzufügen.
Dein page.10 ist ja kein TEMPLATE sondern ein USER Objekt sprich TV Template.
Du musst in TV den TypoScript Pfad mappen. Dafür gibt es auch TUTs. Auf die schnelle mal das gefunden:
TemplaVoila – Tutorial Teil 1 – Templates erstellen und mappen
Dort wird etwas weiter unten beschrieben, wie man ein Typoscript Objekt in TV einbindet.
Ich bin leider kein TV Experte.
Auch kann ich keinen Remote Support bieten. Damit würden ich außerdem denen schaden die damit ihren Lebensunterhalt verdienen...
Hallo,
ich habe das Menü vom Template via Typo-Script-Objektpfad: auf lib.freeCssDropDownMenu gemappt.
Gruß Tobli