Also ich habe das in zwei Projekten unterschiedlich gelöst... beide habe ihre Vor- und Nachteile (wie beinahe alles, außer Schokolade)...
Möglichkeit 1 (meine in den meisten Fällen präferierte):
- Alle Inhalte auf einer Seite in verschiedenen Sektionen erstellen (also ganz normal, alle Inhalte einpflegen)
- Den Sektionen Namen geben, die später auch die Menü-Titel sind
- Dann erstellst du in der index.php des Templates eine einfache Abfrage aller Sektionsnamen auf der Seite - die kann aber mitunter auch bissl komplexer werden, wenn man mehr reinpackt
) - oder du verwendest ganz einfach die passende Klasse, wenn du nix weiter brauchst, außer die Namen und jeweils die section_id:
Code: Alles auswählen
$getSections = CAT_Sections::getActiveSections($page_id);
print_r($getSections);
Aus diesem Array bastelst du dir mit einer foreach-Schleife in Dwoo die Navigation und lässt über JavaScript jeweils zum Ankerpunkt scrollen, denn vor jeder Sektion wird ein Link mit einer individuellen ID generiert:
Code: Alles auswählen
<a class="section_anchor" id="[SEC_ANCHOR.$section_id]" (...)></a>
Hast du also den Anker "bc_" gesetzt und hast eine Sektion mit der ID 28 bekommst du also folgenden "versteckten" Link:
Möchtest du einige Sektionen nicht im Menü haben, dann kann du beim default "no name" einfach den Navigationspunkt nicht erstellen lassen und nur die Sektionen benennen, die du in der Navigation haben willst....
Möglichkeit 2 (nur kurz erklärt):
- Unterseiten erstellen
- in einem WYSIWYG alle Sektionen der Unterseiten über das Droplet einbinden
- in der index.php des Templates page-level checken, und wenn das auf level 0 ist, eine Navigation der Unterseiten einbinden
- Das Folgen der Navigations-Links über JavaScript abfangen und stattdessen ein scrollTo() - sehr ähnlich wie bei Möglichkeit 1