Zum Inhalt springen

Menü wird nicht angezeigt

Erstellt am 7. September 2005 · 11 Antworten · letzte Antwort am 9. September 2005

Tags: Frage

dms ·

Hallo,

ich fange gerade an mich in Typo3 einzuarbeiten.

Nun stecke ich bei der Erzeugung eines Menü's fest.

Ich habe hier das Buch "Content Management mit TYPO3" aus dem Galileo Computing-Verlag, doch dessen Beispiele funktionieren nicht. Ich habe ebenfalls im Netz (auch auf dieser Seite) einige Beispiele gefunden und ausprobiert, jedoch mit dem gleichen Ergebnis.

Was ich möchte ist ein simples Text-Menü. Dazu habe ich einige Testseiten angelegt und freigeschaltet. Für die Startseite habe ich ein Template und eine Designvorlage definiert. Bis auf das Menü wird auch
alles korrekt angezeigt und mit Inhalten gefüllt.

So sieht mein Setup aus:

# Default PAGE object:
page = PAGE
page.typeNum = 0
page.bodyTag = <body>

page.10 = TEMPLATE
page.10 {
   template = FILE
   template.file = fileadmin/html/home.html
   workOnSubpart = DOKUMENT
   marks.INHALT < styles.content.get
   marks.SPALTELINKS < styles.content.getLeft
   marks.SPALTERECHTS < styles.content.getRight

#MENÜ
   marks.MENUE = HMENU
   marks.MENUE.1 = TMENU
   marks.MENUE.1 {
      expAll = 1
      NO.allWrap = <li>|</li>
      ACT.allWrap= <li>|</li>
   }

}

Der Marker MENUE in der Designvorlage wird zwar ersetzt, jedoch durch
einen leeren String.

Habe ich etwas übersehen oder falsch gemacht? Die Seiten enthalten natürlich nicht das Bit "Hide in menu". 🙂

Bin für jeden Tip dankbar.

Liebe Grüsse,

Daniel

ben ·

Kann auf den ersten Blick keinen wirklichen Fehler erkennen.

Gib mal Link zu deiner Seite..
Laut deinem Code nehme ich an, dass du ein Vertikales Menu möchtest. Versuch trotzdem bitte mal:

#MENÜ
   marks.MENUE = HMENU
   marks.MENUE.1 = TMENU
   marks.MENUE.1 {
      expAll = 1
      NO.allWrap = |
      ACT.allWrap= |
   }

also ohne die <li>.. mal sehen ob es dann funktioniert 🙂
Alternativ kannst du es auch mal so versuchen..

#MENÜ
   marks.MENUE = HMENU
   marks.MENUE.1 = TMENU
   marks.MENUE.1 {
      expAll = 1
      NO.allWrap = <li>|</li>
      NO.linkWrap = <li>|</li>
      ACT.allWrap = <li>|</li>
      ACT.linkWrap = <li>|</li>
   }

Grüße,
Ben

dms ·

Hi ben,

vielen Dank für Deine Antwort. Mit der zweiten Version funktioniert es tatsächlich (mit der ersten nicht). Gibt es dafür eine Erklärung?

Da ich mit Deinem Code doppelte <li>-Tags im Code hatte habe ich die Zeilen mit linkWrap rausgenommen.

Einen Link zur Seite gibt es nicht, ich teste hier nur lokal auf meinem Rechner.

Vielen Dank nochmal!

Liebe Grüsse,
Daniel

Edit:
Das ist nun echt seltsam. Nachdem ich das linkWrap ja rausgenommen habe ist es ganu so wie ich es vorher hatte. Absolut 1:1 das selbe an der gleichen Stelle. Nur das eine funktioniert, das andere nicht. :o

ben ·

Wenn du nun exakt das Selbe wie zuvor hast, dann kann es eigentlich nur daran liegen, dass du nachdem du es so gemacht hattest den FE-Cache nicht geleert hast.

Stimmt, in meinem 2. Code hatte ich auch einen Fehler, das LI darf natürlich nicht sowohl im allwrap als auch im linkwrap vorkommen 🙂

dms ·

FE-Cache? Das könnte sein. Ich hab ja geschrieben ich fange gerade erst mit Typo3 an. 🙂

Reicht es nun aus auf "Click here to clear all cache" unterhalb des Template-Setups zu klicken?

ben ·

Ja, soweit ich weiss haben unterschiedliche Typo3 Versionen unterschiedliche Bezeichnungen.
Es reicht jedoch nicht aus "cache in typo3conf löschen" auszuführen.
In der neusten Typo3 Version (3.8-) gibt es nur diesen und "FE-Cache löschen".
Du hast dann voraussichtlich noch eine ältere Version.

Grüße,
Ben

EDIT:
Habe eben gefunden was du meinst.. keine Ahnung, ich verwende immer die 2 Cache-Buttons im Menu ganz unten (sind nur als Admin anwählbar)

dms ·

Hi ben,

danke für die Erklärung. Die beiden Buttons im Menü hatte ich bisher noch garnicht gesehen. Habe mich bisher nur im oberen Teil des Menüs aufgehalten 😉
Ich habe übrigens auch die 3.8er Version.

Liebe Grüsse,
Daniel

dms ·

Gerade hatte ich es wieder.

Das scheint eher ein Problem der Inkompatibilität mit Firefox (unter Linux) zu sein.
Ich kann das Problem reproduzierbar hervorrufen:

Ich kopiere eine Zeile (Alt+C) und lösche das original. Füge ich die Zeile wieder ein (Alt+V) habe ich das absolut gleiche Setup wie zuvor. Doch das Menü wird nicht angezeigt!
Erst wenn ich die Zeile wieder lösche und per Hand neu schreibe funktioniert es wieder.

Ich vermute mal beim Copy/Paste werden irgendwelche unsichtbaren Steuerzeichen eingefügt, die Typo3 nicht filtert...

Andere Browser habe ich nicht getestet. Ich verwende hier:

Mozilla/5.0 (X11; U; Linux i686; de-DE; rv:1.7.6) Gecko/20050306 Firefox/1.0.1 (Debian package 1.0.1-2)

ben ·

Kann ich mir fast nicht vorstellen..
Ich habe schon oft per copy&paste dinge in mein setup eingefügt und hatte noch nie Probleme damit.

Löscht du auch wirklich nach jeder Änderung den Cache und Aktualisierst den Browser?

dms ·

Das löschen des Cache hat bei mir keine Auswirkungen, wie es scheint.

Alle Änderungen in meinem Setup sind sofort aktiv.

Ich vermute mal bei mir ist der Cache deaktiviert. Ganz unten auf der Seite staht auch:
Status: cache_pages:0, cache_pagesection:0, cache_hash:0

Wie auch immer, ich gehe so vor: Ich ändere das Setup per Copy&Paste. Jetzt ist das Menü im FE nicht mehr sichtbar. Ich lösche den Cache (mit den beiden Buttons im Menü und auf der Template-Seite). Das Menü ist noch immer nicht vorhanden. Ich ändere das Setup wieder per Hand und lösche die Zeile dich ich zuvor per Copy&Paste eingefügt habe. Das Menü ist sofort ohne Löschen des Caches wieder sichtbar.

Rein optisch hat sich an meinem TypoScript absolut nichts geändert. Meiner Einschätzung nach können es wirklich nur Steuerzeichen sein.

ben ·

Stimmt, du arbeitest ja auch lokal..
Kann gut sein, dass da der Cache keine auswirkung hat 😉

Habe noch nie lokal damit gearbeitet.. 8-)
Kann mir das bei dir zwar nicht wirklich erklären, aber dann mach es doch einfach so, dass das Menu da ist und fertig #giggle#

dms ·

Mach ich ja jetzt. 🙂 Ich musste ja nur erst mal rausfinden woran es lag.

Ist allerdings schon nervig alle Zeilen per Hand schreiben zu müssen. Ich werde es nachher mal mit einem anderen Browser versuchen. Opera (mein Standard-Browser) fällt leider flach, mit dem gibt es andere Probleme. 🙁
Unter Linux gibts ja dann keine grossen Alternativen mehr. Muss ich wohl mal wieder den Win-Rechner starten und den Explorer probieren.