Hej!
Vorweg: Ich bin ziemlich blutiger Angänger in Sachen Typo3. Nach einem Tag Einarbeitung mit dem OpenSourcePress-Buch bin ich jetzt immerhin so weit, dass ich ein existierendes Webdesign in eine funktionierende HTML-Template umgewandelt habe. "Funktionierend" im Sinne von: Es zeigt den Content an.
Nun will man dann ja normalerweise auch ein Navigationsmenü haben. Auch hier habe ich das Beispiel aus dem Buch fast wortwörlich abgetippt, aber es erscheint schlicht NICHTS.
Mein Marker im HTML-Template sieht so aus:
<!-- ###HAUPTMENUE### start -->
<!-- ###HAUPTMENUE### stop -->
Mein TypoScript-Code sieht dann so aus:
...
subparts.HAUPTMENUE = TEXT
subparts.HAUPTMENUE.value = Bla
temp.navigation = HMENU
temp.navigation.entryLevel = 0
temp.navigation {
1 = TMENU
1.NO.allWrap = | ·
}
subparts.HAUPTMENUE < temp.navigation
...
Der Output ist aber nicht das erhoffte Menü, sondern der vorher gesetzte Testwert "Bla". Ich schließe daraus, dass das Erzeugen des Menüs nicht klappt. Aber warum?
Ich wäre für sachdienliche Hinweise äußerst dankbar!
-- snorri
Wenn du das hier :
subparts.HAUPTMENUE = TEXT
subparts.HAUPTMENUE.value = Bla
wegläßt sollte es klappen.
jenses
Hej jenses,
leider nein. Sobald ich auch nur die Zeile "subparts.HAUPTMENUE.value = Bla" weglasse, erscheint an der Stelle überhaupt nichts mehr. Wenn ich "subparts.HAUPTMENUE = TEXT" auch noch weglasse, erscheint sogar der Platzhaltertext, der in meiner HTML-Template zwischen Start- und Endmarker steht, d.h. es findet überhaupt keine Ersetzung statt.
-- snorri
snorri schriebMein Marker im HTML-Template sieht so aus:
<!-- ###HAUPTMENUE### start -->
<!-- ###HAUPTMENUE### stop -->
Wenn es auch nur eine Kleinigkeit ist, aber was Du Marker nennst sind Subparts, Marker werden anders definiert.
snorri schriebMein TypoScript-Code sieht dann so aus:
...
subparts.HAUPTMENUE = TEXT
subparts.HAUPTMENUE.value = Bla
temp.navigation = HMENU
temp.navigation.entryLevel = 0
temp.navigation {
1 = TMENU
1.NO.allWrap = | ·
}
subparts.HAUPTMENUE < temp.navigation
...
Der Output ist aber nicht das erhoffte Menü, sondern der vorher gesetzte Testwert "Bla". Ich schließe daraus, dass das Erzeugen des Menüs nicht klappt. Aber warum?
Weil Du den Subpart entweder als COA definieren, oder vor der Zuweisung eines neuen Objektes löschen musst.
subparts.HAUPTMENUE >
subparts.HAUPTMENUE < temp.navigation
Hej Matthias,
ist "subparts.HAUPTMENUE >" nicht letztlich das gleiche, als hätte ich weiter oben besagte zwei Zeilen gar nicht erst drin stehen?
Das Verhalten ist jedenfalls identisch: Auch wenn ich Deine Zeile einfüge, findet schlich keine Ersetzung statt, d.h. ich sehe den Platzhaltertext aus meinem HTML-Template ...
-- snorri
Kleines Update: Wenn ich das schreibe
subparts.HAUPTMENUE = TEXT
subparts.HAUPTMENUE.value = Blubb
dann erscheint am Platz des Hauptmenüs brav das Wort "Blubb". Wenn ich allerdings das hier probiere
subparts.HAUPTMENUE = TEXT
subparts.HAUPTMENUE.value = Blubb
temp.hauptmenue = TEXT
temp.hauptmenue.value = Fasel
subparts.HAUPTMENUE < temp.hauptmenue
dann erscheint IMMER NOCH "Blubb". OK, dachte ich mir, einen einmal gesetzten Wer einfach überschreiben gilt wohl nicht, also habe ich das hier probiert:
temp.hauptmenue = TEXT
temp.hauptmenue.value = Fasel
subparts.HAUPTMENUE < temp.hauptmenue
Jetzt aber findet eben überhaupt keine Ersetzung mehr statt! Vielleicht verstehe ich da was falsch, aber eigentlich sollte hier doch subparts.HAUPTMENUE mit dem Inhalt von temp.hauptmenue gefüllt werden, oder?
Anscheinend habe ich also kein Problem mit dem Menü, sondern mit dem Zuweisen des erzeugten Menüs an den betreffenden Subpart ...
-- snorri
Setze mal in die HTML - Vorlage Marker statt der Subparts,
also ###HAUPTMENU### usw., (also nicht auskommentiert !)
im Template ersetzt du dann
marks.HAUPTMENU = HMENU usw.
das klappt auf jeden Fall.
Das mit den Subparts funktioniert nur mit dem Autoparser,
glaub ich.
jenses
Hej jensen,
die Subparts funktionieren definitiv -- sonst würde ja auch das erste Beispiel aus meinem letzen Beitrag nicht laufen; ausserdem wird mir auf die gleiche Weise auch den Content korrekt eingebaut.
Was ich anscheinend aber nicht hinkriege ist, den Inhalt der temp-Variablen an den subpart zu übergeben. Woran kann das liegen? Ich krieg' hier langsam die Krise, das beschäftigt mich jetzt schon einen halben Tag, und der Grund ist garantiert etwas total simples ... 🙁
-- snorri
Hallo,
temp.hauptmenue = TEXT
temp.hauptmenue.value = Fasel
subparts.HAUPTMENUE < temp.hauptmenue
Der Bereich subparts und temp befinden sich voraussichtlich in geschweiften Klammern, daher funktioniert auch die angegebene absolute Kopie nicht. Die Kopie müsste lauten
subparts.HAUPTMENUE < page.10.temp.hauptmenue (Absolute Kopie) oder
subparts.HAUPTMENUE < .temp.hauptmenue (Relative Kopie mit vorangestelltem Punkt.)
Jaaaaaaaaaah.
Das war der entscheidende Tipp, Danke! Jetzt läuft's! 😃
-- snorri