Menüaufbau, wie machen?

Fragen zur Installation von CONTENIDO 4.10? Probleme bei der Konfiguration? Hinweise oder Fragen zur Entwicklung des Systemes oder zur Sicherheit?
Antworten
Faar
Beiträge: 1915
Registriert: Sa 8. Sep 2007, 16:23
Wohnort: Brandenburg
Kontaktdaten:

Menüaufbau, wie machen?

Beitrag von Faar » Mo 17. Aug 2020, 10:52

Ich hab da so einen speziellen Menüwunsch, der mir etwas Kopfzerbrechen macht.
Wie mit contenido lösen?

Code: Alles auswählen

<!-- Hauptmenü -->
<div><div>
<div><div>
<ul class="main-menu">
<li>
<button>Menüpunkt1 level1</button>
</li>
</ul>
</div></div>
</div></div>
<!-- Dropdown untermenü -->
<div>
<nav>
<ul><li>
::marker
<ul><li>
::marker
<a href="#"><span>Submenüpunkt1 level2</span></a>
</li></ul>
</li></ul>
</nav>
</div>
Das Hauptmenü sind Buttons, die per Javascript das Submenü-Dropdown öffnen. Menüpunkt 1 wird per Javascript gefüllt, er existiert daher im Seitenquelltext nicht. Beim Klick darauf öffnet sich ein Dropdown, das vermutlich auch mittels Javascript gefüllt wird und dummerweise ein Design hat, das auf diese Div und Nav und zusätzliche ul-li-Verschachtelung aufbaut, aus reinen Design-Gründen.
Der Button für den Level1 ist kein Anker, es ist quasi eine Kategorie aber ohne Inhalt. Es soll lediglich zum Dropdown öffnen da sein.
Mit Logik und Semantik hat das nichts mehr zu tun.
Nun, wenn ich das navigation_main Modul nehme, liest es mir mit kleinen Änderungen im Template den ganzen Baum aus, also passend für Dropdown-Menüs.
Nur halt eben so:

Code: Alles auswählen

<ul>
<li><a href >Menü1</a>
<ul>
<li><a href >Submenü1</a>
</li>
</ul>
</li>
</ul>
Klassisches Dropdown funktioniert damit bestens, nur eben nicht obiges "Menü Konstrukt.
Beim Klick auf Menüpunkt1 soll das Dropdown öffnen und stehen blweiben mit einem Marker, der auf optisch auf den Menüpunkt 1 zeigt.
Es ist noch um einiges komplizierter als ich es hier erklären kann, vieles positioniert und responsiv auch noch.
Es handelt sich vermutlich beim Original um ein Headless-CMS, mit Bootstrap.
Aber kann man sowas mit Contenido nachvollziehen ohne exorbitalen Aufwand?
Oder habe ich mich verrannt?
Fliegt der Bauer übers Dach, ist der Wind weißgott nicht schwach.

bodil
Beiträge: 340
Registriert: Fr 7. Okt 2011, 04:10
Kontaktdaten:

Re: Menüaufbau, wie machen?

Beitrag von bodil » Mo 17. Aug 2020, 15:07

Beim Klick darauf öffnet sich ein Dropdown, das vermutlich auch mittels Javascript gefüllt wird.
Spannend. Das soll per Ajax passieren? Dann musst du die Daten ja auch irgendwie bereitstellen.
Klingt insgesamt so, als würdest du dir die Daten am besten direkt aus der Datenbank holen. Das ist aber eigentlich auch kein Hexenwerk.
Und: es zu schaffen, auf Ajax zu verzichten (und die erforderlichen Daten doch schon vom PHP auf die Seite schreiben zu lassen) würde die Sache vermutlich vereinfachen ...?

Faar
Beiträge: 1915
Registriert: Sa 8. Sep 2007, 16:23
Wohnort: Brandenburg
Kontaktdaten:

Re: Menüaufbau, wie machen?

Beitrag von Faar » Mo 17. Aug 2020, 15:59

Nicht Ajax, nur mit Javascript wird es im Original gemacht.
Und ja, es sieht stark nach einem Headless-CMS aus.
Direkt aus der Datenbank hole ich die Daten ja sowieso, mittels Modul.
Aber die Art der Bereitstellung ist komplett anders.
Dort sind die Daten wohl in Script-Variablen gespeichert und bei mir kommen sie bereits als HTML im Browser an.
So genau weiß ich es noch nicht, da sich das HTML der gescripteten Seite schwer vom HTML des Seitenquelltextes unterscheidet.
Die Entwicklertools zeigen mir an, was das Script gemacht hat, der Quelltext, wie es vor dem Script ist.

Am Ende muss es Buttons als Hauptmenü des ersten Levels geben und das Untermenü klassisch aber getrennt.
Diese Trennung bekomme ich so nicht einfach hin, weil im PHP müsste ich genau die erste Ebene der Kategorien anzeigen lassen, dann hätte ich den ersten Teil mit den Buttons.
Das Submenü bekäme ich über ein Modul, das erst ab Level 2 das Menü anzeigt.
Wie bekomme ich den Zusammenhang, wenn ich Button 1 anklicke, dass sich dann Submenü 2 öffnet?
Wohl auch nur mit Javascript.
Fliegt der Bauer übers Dach, ist der Wind weißgott nicht schwach.

bodil
Beiträge: 340
Registriert: Fr 7. Okt 2011, 04:10
Kontaktdaten:

Re: Menüaufbau, wie machen?

Beitrag von bodil » Mo 17. Aug 2020, 19:47

Wie werden dem Javascript die Daten zur Verfügung gestellt? Da müssen auf der Seite doch (gefüllte) Variablen zur Verfügung gestellt werden. Und die kannst du doch auch nachbauen, wenn du die Daten eh per SQL aus der Datenbank holst?
Und auf Button A Klicken um Div B sichtbar zu machen - das klingt schon auch sehr nach einer Anwendung für JS ...

Antworten