Ergebnis 1 bis 3 von 3

Thema: Spezielle Seiten aus Navigationstemplate ausblenden

  1. #1
    Contao-Fan Avatar von electricarts
    Registriert seit
    22.07.2010.
    Ort
    Georgsmarienhütte
    Beiträge
    381

    Standard Spezielle Seiten aus Navigationstemplate ausblenden

    Hallo,

    ich habe eine spezielle Anforderung bei der Navigation und weiß nicht, wie ich das umsetzen soll.

    Der Seitenbaum besteht (der Einfachheit hier) aus den Seiten A, B und C. B hat die Unterseiten B1, B2 und B3. Das Hauptmenü ist ein normales horizontales Menu, aus dem aber die Seite B (inkl. der Unterseiten) rausgelöst wird und diese an anderer Stelle im Header als Dropdown angezeigt wird.

    Wie mache ich das? Im Moment habe ich diese B-Seiten bei den Seiteneinstellungen auf „Im Menu verstecken“ stehen und zeige diese als individuelles Menü an. Das geht erstmal, hat aber einen großen Nachteil: In anderen Navigationen (z. B. im mobilen Menu und in der Breadcrumb Navi) fehlen mir diese Seiten ja auch, da sie generell versteckt sind.

    Hat jemand eine Idee wie ich die Anforderungen umsetzen kann?


    Viele Grüße


    Mario

  2. #2
    Wandelndes Contao-Lexikon Avatar von tab
    Registriert seit
    22.10.2013.
    Beiträge
    10.077
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Mehrere, je nachdem, wie die Seite B und ihre Unterseiten dargestellt werden dürfen. Man könnte natürlich dran denken, das <li> mit der Seite B und ihren Unterseiten einfach absoltut dahin zu positioneren, wo sie gebraucht werden. Das wäre dann sicher das allereinfachste.

    Dann könnte man es natürlich auch über das Navigations-Template lösen, indem man den Seiten, die nicht in der Navi angezeigt werden sollen, hier also B, eine bestimmte Klasse, z.B. "no_nav" zuweist. Ein <li> mit dieser Klasse gibt man dann halt einfach nicht aus. Solang in jedem <ul> wenigstens ein <li> ausgegeben wird, könnte das eventuell so klappen:

    PHP-Code:
    <ul class="<?= $this->level ?>" role="<?= ($this->level == 'level_1') ? 'menubar' 'menu' ?>">
      <?php foreach ($this->items as $item): ?>
        <?php if (strpos($item['class'], 'no_nav') === false): ?>
          <?php if ($item['isActive']): ?>
            <li class="<?= $item['class'?>"><span class="<?= $item['class'?>" role="menuitem"<?php if (!empty($item['subitems'])): ?> aria-haspopup="true"<?php endif; ?>><?= $item['link'?></span><?= $item['subitems'?></li>
          <?php else: ?>
            <li<?php if ($item['class']): ?> class="<?= $item['class'?>"<?php endif; ?>><a href="<?= $item['href'] ?: './' ?>" title="<?= $item['pageTitle'] ?: $item['title'?>"<?php if ($item['class']): ?> class="<?= $item['class'?>"<?php endif; ?><?php if ($item['accesskey'] != ''): ?> accesskey="<?= $item['accesskey'?>"<?php endif; ?><?php if ($item['tabindex']): ?> tabindex="<?= $item['tabindex'?>"<?php endif; ?><?php if ($item['nofollow']): ?> rel="nofollow"<?php endif; ?><?= $item['target'?> role="menuitem"<?php if (!empty($item['subitems'])): ?> aria-haspopup="true"<?php endif; ?>><?= $item['link'?></a><?= $item['subitems'?></li>
          <?php endif; ?>
        <?php endif; ?>
      <?php endforeach; ?>
    </ul>

  3. #3
    Contao-Fan Avatar von electricarts
    Registriert seit
    22.07.2010.
    Ort
    Georgsmarienhütte
    Beiträge
    381

    Standard

    Ok, die absolute Position wirkt für mich sehr sexy. Einfach umzusetzen und doch effektiv. ;-) Hätte ich auch selbst drauf kommen können.

    Danke!

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •