Knowledgebase:Menu Navigation
Allgemeines
- Installation / Update
- Lizenzdiskussionen
- Mehrsprachigkeit
- Übersetzungen
- Verschiedenes
- WYSIWYG-Editor
- Wartung
Design & Navigation
Module
- Neue Module erstellen
- Community
- Directory
- Dokumenten System
- Galerie
- Gästebuch
- Kalender
- Kontaktformular
- Mediamanager
- News
- Newsletter
- News-Syndication
- Podcast
- Seitenempfehlung
- Sitemap
- Voting
Fehlerbehebung
Contents
Frage
Kann ich mit Contrexx eine Seite erstellen, die beim aufrufen keine Navigation hat? Also nur die reine Textseite?
Antwort
Damit Sie eine Seite ohne Navigation erstellen können, müssen Sie ein zusätzliches Design erstellen und in diesem den Platzhalter für die Navbar entfernen. Sie können auch einfach das bestehende Design duplizieren (Administration >Designverwaltung >Neue Designvorlage erstellen >Von Vorlage) und den Navbar-Platzhalter entfernen. Anschließend müssen Sie im Content Manager der Seite, welche keine Navigation aufweisen soll, das angepasste Design unter den Erweiterten Optionen zuordnen.
Frage
Kann ich eine Navigation mit Buttons erstellen?
Antwort
Von einer Navigation mit Buttons würden wir abraten, so ist die ganze Dynamik des Systems weg. Natürlich kannst Du die navbar.html (in der Designverwaltung) anpassen und die Buttons einfügen und statisch verlinken. Fixe Navigationsbuttons können aber auch direkt im index.html eingefügt werden.
<a href="?section=news"><img src="pfad/zum/bild.gif" alt="News" title="News"></a>
<a href="?section=guestbook"><img src="pfad/zum/bild.gif" alt="Gästebuch" title="Gästebuch"></a>
Die Grafiken "dynamisch" erzeugen zu lassen geht nicht.
Frage
Kann die Navigation auch semantisch korrekt mit <ul>- und <li>-Tags verschachtelt werden? Wie muss so eine Navigation eingebunden werden?
Antwort
Das ist seit der Version 1.0.9 möglich. Eingebunden wird ein verschachteltes Menü beispielsweise folgendermassen:
<!-- BEGIN nested_navigation -->
[[levels_13]]
<!-- BEGIN level -->
<a href="[[URL]]" title="[[NAME]]">[[NAME]]</a>
<!-- END level -->
<!-- END nested_navigation -->
In diesem Beispiel wird ein dreifach verschachteltes Menü mit den Ebenen 1 bis 3 dargestellt. Im Gegensatz zu normalen Menüs (navigation) oder Dropdown-Menüs (navigation_dropdown) werden die verschachtelten Menüs mit nested_navigation eingeleitet. Die Ebenen werden mit dem [[level_XY]]-Platzhalter bestimmt. Die Ebenen werden wie bei folgenden Beispielen bestimmt:
[[levels_13]]: Ebenen 1-3;
[[levels 11]]: Nur eine Ebene, mit level 1;
[[levels_2+]]: Alle Ebenen ab level 2.
Der Output könnte z. B. folgendermassen aussehen:
<ul id='menu_level_1'>
<li class="active"><a href="url1">name1</a>
<ul id='menu_level_2'>
<li class="inactive"><a href="url2">name2</a></li>
<li class="active"><a href="url3">name3</a></li>
</ul></li>
<li class="inactive"><a href="url4">name4</a></li>
<li class="inactive"><a href="url5">name5</a></li>
</ul>
Jede Menüebene bekommt automatisch einen Stylenamen in Abhängigkeit des Levels (z.B. menu_level_1, menu_level_2). Alle Menüebenen können dann per CSS problemlos formatiert werden, wie in diesem Beispiel für die Ebene 2:
ul#menu_level_2 {
width: 760px;
height: 24px;
background-color: green;
}
ul#menu_level_2 li {
list-style: none;
height: 24px;
}
ul#menu_level_2 li a {
color: red;
font-weight: bold;
}
ul#menu_level_2 li a:link, ul#menu_level_2 li a:visited {
text-decoration: none;
}
ul#menu_level_2 li a:hover, ul#menu_level_2 li a:active, ul#menu_level_2 li.active a {
text-decoration: underline;
}
Externer Link im Menu
Frage
Wie kann ich einen externen Link im Menu einfügen?
Antwort
Dazu müssen Sie die zu verlinkende Seite im Content Manager geöffnet haben. Dann gehen Sie auf Erweitert und fügen unter Redirekt URL die gewünschte Adresse ein.
Brotkrumenpfad
Frage
Wie kann ich einen Brotkrumenpfad einfügen?
Antwort
Ich denke, dass du auf der Suche nach der Variable [[NAVTREE]] bist. Diese kannst Du in content.html / home.html (Designmanager) einfügen. Am besten gleich in der Kombination mit [[CONTENT_TITLE]] verwenden.
Hierzu ein Beispiel:
[[NAVTREE]][[CONTENT_TITLE]] ergibt beispielsweise Hauptkategorie > Unterkategorie > Seitentitel
Brotkrumenpfad formatieren
Frage
Ich würde gerne den Klickpfad, der mit [[NAVTREE]] eingefügt wird, formatieren. Ich möchte nämlich anstatt des > zwischen den Links ein » angezeigt bekommen.
Antwort
Das lässt sich in der Datei /core/Navigation.class.php ändern. Und zwar mit dem Ändern der Separator Variable auf Zeile 23.
var $separator = " > ";
Frage
Kann ich z.B. auch einen dritten Platzhalter für die Navigation verwenden?
Antwort
Standardmässig wird Contrexx ab dem Release 1.2 mit vier Navigationsplatzhaltern ausgeliefert.
NAVBAR_FILE, SUBNAVBAR_FILE, SUBNAVBAR2_FILE und SUBNAVBAR3_FILE.
Sollte dies nicht reichen, so kannst Du jederzeit im Code zwei Änderungen vornehmen und schon
sind die Navigationsplatzhalter nach belieben erweiterbar!
index.php:
'SUBNAVBAR_FILE' => $objNavbar->getNavigation($themesPages['subnavbar'],$boolShop),
kopiere diese Zeile und modifiziere Sie wie folgt:
'SUBNAVBAR4_FILE' => $objNavbar->getNavigation($themesPages['subnavbar4'],$boolShop),
core/Init.class.php:
$this->templates['subnavbar'] = file_get_contents(ASCMS_THEMES_PATH.'/'.$themesPath.'/subnavbar.html');
kopiere diese Zeile und modifiziere Sie wie folgt:
$this->templates['subnavbar4'] = file_get_contents(ASCMS_THEMES_PATH.'/'.$themesPath.'/subnavbar4.html');
Danach solltest Du noch die entsprechenden HTML-Dateien im Ordner Themes anlegen und schon kanns losgehen.