[yamltools] nav_vlist_yaml_title, Überschrift immer von Ebene 1

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • Andreas
    Contao-Urgestein
    • 19.06.2009
    • 7709

    #1

    [yamltools] nav_vlist_yaml_title, Überschrift immer von Ebene 1

    Hallo zusammen,

    hab grad tlyaml und yamltools auf TYPOlight 2.7.1 aufgesetzt. Soweit alles klar. Ich bekomme es nur nicht hin, ein Modul "Tl-Yaml - Submenu Title" so zu konfigurieren, dass ich immer nur den Titel der obersten Seite sehe.

    Das habe ich versucht:
    • Modultyp - Navigationsmenü
    • Startlevel - 0
    • Stoplevel - 1
    • Hard Limit - false
    • Navigationstemplate - nav_yaml_vlist_title
    • CSS-Klasse - vlist_title


    Das ist das Template:
    PHP-Code:
    <?php foreach ($this->items as $item): ?>
    <?php if ($item['isActive']): ?>
    <div><?php echo $item['link']; ?></div>
    <?php endif; endforeach; ?>
    Kann mir da jemand helfen? Auf irgendeiner Seite hab ich's gesehen, weiß leider nicht mehr wo.

    Gruß Andreas
    Bitte!
    Vor Anfragen im Forum HTML validieren.
    Codesnippets hier im Froum sauber einrücken. Nur Tabs o. nur Leerzeichen verwenden.

    Vielen Dank an alle Wunschlistenerfüller
    Andreas Burg, Web Solutions
  • hschottm
    Contao-Fan
    • 15.06.2009
    • 825

    #2
    Hallo Andreas,

    nur um das zu verstehen. Du willst eine vlist machen, bei der immer nur die oberste Menüebene angezeigt wird? Also wenn du folgende Struktur hast:

    Code:
    +a
    +b+
      +c
      +d
    +e
    Dann würde auf Seite a der Eintrag a angezeigt werden, auf den Seiten b, c, und d der Eintrag b und auf Seite e der Eintrag e?
    Gruß,
    Helmut
    Blackmail's such an ugly word. I prefer extortion -- the "x" makes it sound cool.
    -- Bender

    Kommentar

    • Andreas
      Contao-Urgestein
      • 19.06.2009
      • 7709

      #3
      Hallo Helmut,

      ne, nicht so ganz. Wenn du YAML kennst, http://www.yaml.de/fileadmin/example...l_listnav.html, da ist links ein vertikaes Listenmenü und darüber ist eine Überschrift. Diese Überschrift möchte ich generieren. Dazu ist in der Tl ext. yamltools das Template nav_yaml_vlist_title vorhanden.

      Diese Überschrift soll immer die oberste Ebene des Zweiges darstellen, in welchem ich mich gerade befinde.

      Beispiel:

      Obst
      ....Steinobst
      ........Pflaumen
      Gemüse
      ....Wurzeln
      ........Kartoffeln
      Fleisch

      Im oberen Hauptmenü hab ich jetzt immer Obst | Gemüse | Fleisch stehen. Ganz normale Main-Navigation.

      Bin ich jetzt auf Steinobst, dann soll im linken vertikalen Menü als ÜberschriftH6 Obst darüber stehen. Gehe ich auf Pflaumen, dann ebenfalls. Bei Kartoffeln soll also Gemüse dort oben stehen.

      Bei Fleisch soll dann nur die Überschrift Fleisch dort stehen.

      Mit Modultyp - Navigationsmenü bin ich da wohl ziemlich auf dem Holzweg, aber ich weiß leider nicht wie's geht. Ich find auch keine Dokus, die etwas tiefer gehen, nur das Benutzerhandbuch und das für die Redakteure.

      Gruß Andreas
      Bitte!
      Vor Anfragen im Forum HTML validieren.
      Codesnippets hier im Froum sauber einrücken. Nur Tabs o. nur Leerzeichen verwenden.

      Vielen Dank an alle Wunschlistenerfüller
      Andreas Burg, Web Solutions

      Kommentar

      • Andreas
        Contao-Urgestein
        • 19.06.2009
        • 7709

        #4
        Code:
        +a
        +b+
          +c
          +d
        +e
        Dann würde auf Seite a der Eintrag a angezeigt werden, auf den Seiten b, c, und d der Eintrag b und auf Seite e der Eintrag e?
        Sorry, ja klar, das ist genauso wie ich es meine. Das mit der vlist hat mich irritiert, da ich ja eigentlich keine Liste, sonder nur den einfachen Wert von diesem Punkt brauche.

        Andreas
        Bitte!
        Vor Anfragen im Forum HTML validieren.
        Codesnippets hier im Froum sauber einrücken. Nur Tabs o. nur Leerzeichen verwenden.

        Vielen Dank an alle Wunschlistenerfüller
        Andreas Burg, Web Solutions

        Kommentar

        • hschottm
          Contao-Fan
          • 15.06.2009
          • 825

          #5
          Also irgendwie funktioniert das nicht richtig. Evtl. hat sich da mit 2.7 auch was geändert. Ich schau mir das mal an, schaffe das aber wohl erst am Sonntag. Irgendwie macht das vlist_title Template eh nicht so richtig Sinn, weil der Titel als DIV und nicht als H3 ausgegeben wird, wie es in den YAML Beispielen ist.

          Gruß,
          Helmut
          Blackmail's such an ugly word. I prefer extortion -- the "x" makes it sound cool.
          -- Bender

          Kommentar

          • Andreas
            Contao-Urgestein
            • 19.06.2009
            • 7709

            #6
            Ja, wäre schön, wenn du es hinbekommen würdest. Die vlist funktioniert ja, allerdings hätt' ich auch gerne den orig. YAML Qellcode.

            Ich hab grad tlyaml installiert und versucht out of the box zu produzieren. Naja, mit YAML kenn ich mich aus, aber jetzt muss ich wohl wieder eine neue Struktur erlernen.

            Ich hatte mal YAML manuell unter TYPOlight gelegt, das geht auch, aber da kam ich auch nicht mit diesem vlist_title zurecht.

            Andreas
            Bitte!
            Vor Anfragen im Forum HTML validieren.
            Codesnippets hier im Froum sauber einrücken. Nur Tabs o. nur Leerzeichen verwenden.

            Vielen Dank an alle Wunschlistenerfüller
            Andreas Burg, Web Solutions

            Kommentar

            • hschottm
              Contao-Fan
              • 15.06.2009
              • 825

              #7
              Hallo Andreas,

              lade dir mal die neue Version von den yamltools, die ich gerade ins Extension Repository gestellt habe. Das Template nav_yaml_vlist_title gibt es jetzt nicht mehr, dafür generiert aber nav_yaml_vlist jetzt ein korrektes YAML vlist Menü wie im Beispiel, also mit einer h6 Überschrift über der Liste, was hier dann der Titel der übergeordneten Seite ist.

              Außerdem musst du im Modul unter CSS-Klasse auch nicht mehr vlist eintragen, das habe ich jetzt direkt ins Template übernommen, schließlich ist es ja ein YAML Template

              Gruß,
              Helmut
              Blackmail's such an ugly word. I prefer extortion -- the "x" makes it sound cool.
              -- Bender

              Kommentar

              • Andreas
                Contao-Urgestein
                • 19.06.2009
                • 7709

                #8
                Hallo Helmut,

                noch nicht ganz. Aber schon mal super, jetzt ist H6 auch direkt anders formatiert, und die Handhabung im BE ist simpler.wahrscheinlich hast du den DIV drumherum entfernt.

                Was noch nicht stimmt. Ausgehend von deinem Beispiel:
                Code:
                +r+
                  +a
                  +b+
                    +c
                    +d+
                      +x
                  +e
                Momentan wird H6 aus der Elternseite der aktuellen Seite gerendert. Und: wenn eine Seite keine Unterseiten hat, wird nichts gerendert.
                Beispiele:

                b - r
                c - b
                x - d
                e - false

                Es soll aber immer nur a, b od. e erscheinen (Ebene 1).
                a - a
                b|c|d|x - b
                e - e

                kriegst du das hin? Ich wünschte ich wäre auch schon so weit mit meinen Tl-Kenntnissen.

                Andreas
                Bitte!
                Vor Anfragen im Forum HTML validieren.
                Codesnippets hier im Froum sauber einrücken. Nur Tabs o. nur Leerzeichen verwenden.

                Vielen Dank an alle Wunschlistenerfüller
                Andreas Burg, Web Solutions

                Kommentar

                • Andreas
                  Contao-Urgestein
                  • 19.06.2009
                  • 7709

                  #9
                  Helmut

                  Hab mal rumexperimentiert, vielleicht nützt es dir ja was.

                  1. Versuch
                  im tmpl mod_navigation_yaml.tpl
                  PHP-Code:
                  <h6 class="vlist"><?php echo $this->menutitle; ?></h6>
                  ersetzt durch
                  PHP-Code:
                  <h6 class="vlist">{{env::main_name}}</h6> 
                  
                  dann ist es fast so, wie ich meine, außer, wenn eine Seite keine Unterseiten hat, dann kommt nix.

                  2. Versuch
                  wieder das alte tmpl ohne H6 genommen. Und ein Modul für H6 gemacht vom Typ HTML
                  HTML-Code:
                  <h6 class="vlist">{{env::main_name}}</h6>
                  dann ist es so, wie ich es möchte. Hab den Quelltext aber noch nicht begutachtet.

                  Andreas
                  Bitte!
                  Vor Anfragen im Forum HTML validieren.
                  Codesnippets hier im Froum sauber einrücken. Nur Tabs o. nur Leerzeichen verwenden.

                  Vielen Dank an alle Wunschlistenerfüller
                  Andreas Burg, Web Solutions

                  Kommentar

                  • hschottm
                    Contao-Fan
                    • 15.06.2009
                    • 825

                    #10
                    Moment,

                    jetzt bin ich irgendwie verwirrt...
                    Bislang war ich davon ausgegangen, dass als Überschrift einer vertikalen Listennavigation, sofern sie als Menü eingesetzt wird, immer die übergeordnete Seite steht, d.h., um mal dein Beispiel aufzugreifen:

                    Code:
                    +r+
                      +a
                      +b+
                        +c
                        +d+
                          +x
                      +e
                    In diesem Menü müsste doch immer die oberste Seite, also r angezeigt werden. Befindet man sich auf der Ebene von r, also in der obersten Ebene, dann lasse ich da momentan den Titel der Website, wenn es einen gibt, anzeigen.

                    Ist man auf der Ebene von a,b,e, dann wird r als Titel angezeigt.

                    Auf der Ebene von c,d würde b angezeigt werden und auf der Ebene von x würde d angezeigt werden oder sehe ich das jetzt falsch?

                    Hab ich da Müll programmiert?

                    Gruß,
                    Helmut
                    Blackmail's such an ugly word. I prefer extortion -- the "x" makes it sound cool.
                    -- Bender

                    Kommentar

                    • MacKP
                      Contao-Yoda
                      • 15.06.2009
                      • 13315

                      #11
                      Ich muss mich da doch mal kurz einmischen *g*
                      Ich hab das selber noch nicht getestet.. aber das vorgehen von hschottm klingt genau so wie ich es erwarten würde. Alle anderen Wünsche sollten also meiner Meinung nach eher im Template realisiert werden.

                      Zusätslich noch eine Option mit Überschrift Ja/Nein wäre schon nett. Aber auch da kann man im Template rumspielen ^^

                      Viele Grüße
                      Contao Pool | C-C-A | MetaModels | [Internetseite -> Mediendepot Ruhr]
                      [Arbeitet bei -> Paus Design & Medien]
                      "I can EXPLAIN it to you, but I can't UNDERSTAND it for you."

                      Kommentar

                      • Andreas
                        Contao-Urgestein
                        • 19.06.2009
                        • 7709

                        #12
                        Hallo Helmut,

                        r steht nur für root, den link gibt es also nicht auf der site.

                        So. Jetzt stell dir mal vor, du hast mehrere Seiten (Bereiche, Kategorien). Z.B. Produkte, Internes, Familie. Ich weiß, bin grad nicht kreativ . Oben hast du eine schöne große Navigation wie üblich, wo du diese Kat. ansteuern, auswählen kannst, ein Haupmenü also. Dort sollen auch keine Unterseiten erscheinen, aufklappen oder ähnliches.

                        Ich habe eine linke Spalte, wie die meisten ja auch. Da ist nun mein zweites Menü, alles standard. Dort werden die Unterseiten angezeigt wenn vorhanden, mit all seinen Ebenen, erstmal zugeklappt und wenn Unterseiten vorhanden sind werden diese angezeigt. Also alles ganz normal, kein spezieller Fall oder so.

                        Wenn man jetzt z.B. im Bereich Produkte ist, dann ist ja oben in der Hauptnavigation der Punkt Produkte immer hervorgehoben, egal wie tiel man in die Ebenen des Bereichs Produkte eintaucht.

                        Und genau das ist es was ich möchte, diesen hervorgehobenen Punkt des Hauptbereiches nocheinmal als Überschrift links über dem Menü für die Unterseiten als z.B. H1 anzeigen. Ich denke mir, so ist es auch von YAML gedacht, denn etwas anderes würde doch keinen Sinn machen, oder?

                        Programmiertechnisch geht es also darum:

                        du bist auf einer bestimmten Seite in einer bestimmten Ebene, sagen wir Ebene7. Jetzt läufst du die rootline zurück bis ganz nach oben und holst den Titel der Seite von, sagen wir mal Ebene2* aus dieser rootline. *Man muss diese Ebene auswählen können, um unterschiedliche Seitenstrukturen im BE zu berücksichtigen.

                        Wie geht das?

                        Andreas
                        Bitte!
                        Vor Anfragen im Forum HTML validieren.
                        Codesnippets hier im Froum sauber einrücken. Nur Tabs o. nur Leerzeichen verwenden.

                        Vielen Dank an alle Wunschlistenerfüller
                        Andreas Burg, Web Solutions

                        Kommentar

                        • MacKP
                          Contao-Yoda
                          • 15.06.2009
                          • 13315

                          #13
                          Hallo Andreas,
                          da helfen dir die Inserttags im Template:


                          Durch diesen Inserttag bekommst du den Namen der Übergeordneten Hauptmenü Seite.
                          Genau das was du möchtest. Also geschwind das Template kopieren und für die Überschriften diesen Inserttag eingeben ;-)

                          Viele Grüße
                          Contao Pool | C-C-A | MetaModels | [Internetseite -> Mediendepot Ruhr]
                          [Arbeitet bei -> Paus Design & Medien]
                          "I can EXPLAIN it to you, but I can't UNDERSTAND it for you."

                          Kommentar

                          • Andreas
                            Contao-Urgestein
                            • 19.06.2009
                            • 7709

                            #14
                            Zitat von MacKP Beitrag anzeigen
                            ---Aber auch da kann man im Template rumspielen...
                            Hallo MackP,

                            ja, genau darum geht es ja, um das Template so zu gestalten. Ich weiß nur nicht wie. Müsste so etwas in der Art sein:

                            this->level_1[title]

                            Also von der aktuellen rootline den Seitentitel der Seite von Ebene1 holen, aber wie geht das?

                            Gruß Andreas
                            Bitte!
                            Vor Anfragen im Forum HTML validieren.
                            Codesnippets hier im Froum sauber einrücken. Nur Tabs o. nur Leerzeichen verwenden.

                            Vielen Dank an alle Wunschlistenerfüller
                            Andreas Burg, Web Solutions

                            Kommentar

                            • Andreas
                              Contao-Urgestein
                              • 19.06.2009
                              • 7709

                              #15
                              Zitat von MacKP Beitrag anzeigen
                              ...Durch diesen Inserttag bekommst du den Namen der Übergeordneten Hauptmenü Seite.
                              Genau das was du möchtest. ...
                              Das hab ich ja schon probiert, ist aber nicht das was ich möchte, da ich die Ebene nicht auswählen kann.

                              Andreas
                              Bitte!
                              Vor Anfragen im Forum HTML validieren.
                              Codesnippets hier im Froum sauber einrücken. Nur Tabs o. nur Leerzeichen verwenden.

                              Vielen Dank an alle Wunschlistenerfüller
                              Andreas Burg, Web Solutions

                              Kommentar

                              Lädt...