Zitat von
kayyy
Allerdings gibt es hier glaube ich ein Problem mit dem Dropdown Menü, hier müsste man im template eine php if Abfrage machen.
"Wenn level1, dann zeige das an, wenn level2 diesen code".
Genau das habe ich gemacht.
PHP-Code:
<ul class="<?php echo $this->level; if($this->level == level_1) echo ' nav'; else if($this->level == level_2) echo ' dropdown-menu'; ?>">
<?php foreach ($this->items as $item): ?>
<?php if ($item['isActive']): ?>
<li class="<?php echo $item['class']; if(strpos($item['class'], 'submenu') !== false) echo ' dropdown'; ?>">
<?php if(strpos($item['class'], 'submenu') !== false): ?>
<a class="dropdown-toggle <?php echo $item['class']; ?>" data-toggle="dropdown">
<?php echo $item['link']; ?>
<b class="caret"></b>
<?php else: ?>
<a class="<?php echo $item['class']; ?>">
<?php echo $item['link']; ?>
</a>
<?php endif; ?>
</a>
<?php echo $item['subitems']; ?>
</li>
<?php else: ?>
<li<?php if ($item['class']): ?>
class="<?php echo $item['class'];
if(strpos($item['class'], 'submenu') !== false) echo ' dropdown'; ?>"
<?php endif; ?>>
<a href="<?php echo $item['href']; ?>" title="<?php echo $item['pageTitle'] ? $item['pageTitle'] : $item['title']; ?>"<?php if ($item['class']): ?>
class="<?php echo $item['class']; if(strpos($item['class'], 'submenu') !== false) echo ' dropdown-toggle'; ?>"
<?php if(strpos($item['class'], 'submenu') !== false) echo 'data-toggle="dropdown"'; ?>
<?php endif; ?><?php if ($item['accesskey'] != ''): ?>
accesskey="<?php echo $item['accesskey']; ?>"<?php endif; ?><?php if ($item['tabindex']): ?> tabindex="<?php echo $item['tabindex']; ?>"<?php endif; ?><?php if ($item['nofollow']): ?> rel="nofollow"<?php endif; ?><?php echo $item['target']; ?>><?php echo $item['link']; ?>
<?php if(strpos($item['class'], 'submenu') !== false): ?>
<b class="caret"></b>
<?php endif; ?>
</a><?php echo $item['subitems']; ?>
</li>
<?php endif; ?>
<?php endforeach; ?>
</ul>
Sieht allerdings jetzt nicht mehr sehr übersichtlich aus, schon garnicht in dem Editor von Contao. Das Template funktioniert so für mich, allerdings auch nur wenn meine Seitenstruktur nicht mehr als 2 Level hat, für 3 Level müsste man den Code nochmal um ein Stück erweitern. Allerdings habe ich mich dazu entschieden bei künftigen Contao-Seiten ohne Bootstrap zu arbeiten, und die Navigation so wie sie standardmäßig im Template ist, mit eigenen css Anweisungen zu stylen.
Lesezeichen