Contao-Camp 2024
Ergebnis 1 bis 4 von 4

Thema: Nachrichtenarchiv Menue - Monate erst anzeigen, wenn man das Jahr angeklickt hat

  1. #1
    Contao-Fan
    Registriert seit
    20.06.2009.
    Beiträge
    563

    Standard Nachrichtenarchiv Menue - Monate erst anzeigen, wenn man das Jahr angeklickt hat

    Hallo zusammen,

    meine Seite besteht seit 2008 und in jedem Jahr gab es zahlreiche News. In einem Jahr waren es über 70. Bisher hatte ich das Nachrichtenarchiv-Menue so eingestellt, dass die Monate angezeigt wurden. Das ist nun aber ewig lang geworden.

    Mir ist bewusst, dass ich die Anzeige auf "Jahre" umstellen kann. Dann ist die Liste des Jahres aber sehr lang.

    Gibt es eine Lösung für einen Mittelweg? Also, dass man z.B. die News des aktuellen Jahres Monatsweise angezeigt bekommt, aber die der vergangenen Jahre nur, wenn man das Jahr "aufklappt"? Das wäre für mich eine gute Lösung, denke ich.
    Viele Grüße
    Shania

  2. #2
    Contao-Urgestein Avatar von do_while
    Registriert seit
    15.06.2009.
    Ort
    Berlin | Deutschland
    Beiträge
    3.612
    Partner-ID
    1081
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Mit einer Templateanpassung kannst Du auch sehr viele News in der Übersicht anzeigen.
    Hier ein Beispiel: https://herd-und-hof.de/newsarchiv.html

    Das sind ca. 12000 Newsbeiträge seit 2004.

  3. #3
    Contao-Urgestein Avatar von do_while
    Registriert seit
    15.06.2009.
    Ort
    Berlin | Deutschland
    Beiträge
    3.612
    Partner-ID
    1081
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hier noch das Template (Contao 3.5) dazu:
    HTML-Code:
    <?php $this->extend('block_unsearchable'); ?>
    
    <?php $this->block('content'); ?>
    
      <?php if (empty($this->items)): ?>
        <p class="empty"><?= $this->empty ?></p>
      <?php else: ?>
        <ul class="level_1">
          <?php foreach ($this->items as $year=>$months): ?>
            <li class="year submenu">
              <?php if ($year == $this->activeYear): ?>
                <span class="active"><h3><?= $year ?></h3></span>
              <?php else: ?>
                <a href="<?= $this->url ?>year=<?= $year ?>"><h3><?= $year ?></h3></a>
              <?php endif; ?>
              <ul class="level_2">
              	<?php $months = array_reverse($months); ?>
                <?php foreach ($months as $month): ?>
                  <?php if($month['isActive']): ?>
                    <li class="active<?php if ($month['class']) echo ' ' . $month['class']; ?>"><span class="active"><?= mb_substr($month['link'],0,3) ?><?php if ($this->showQuantity): ?> <span class="quantity">(<?= split($month['quantity'], ' ')[0] ?>)</span><?php endif; ?></span></li>
                  <?php else: ?>
                    <li<?php if ($month['class']): ?> class="<?= $month['class'] ?>"<?php endif; ?>><a href="<?= $this->url ?>month=<?= $month['date'] ?>" title="<?= $month['title'] ?>"><?= mb_substr($month['link'],0,3) ?><?php if ($this->showQuantity): ?> <span class="quantity">(<?= trimsplit(' ',$month['quantity'])[0] ?>)</span><?php endif; ?></a></li>
                  <?php endif; ?>
                <?php endforeach; ?>
              </ul>
            </li>
          <?php endforeach; ?>
        </ul>
      <?php endif; ?>
    
    <?php $this->endblock(); ?>

  4. #4
    Contao-Fan
    Registriert seit
    20.06.2009.
    Beiträge
    563

    Standard

    Das ist wahrscheinlich noch etwas overdone für meine Seite, aber ich werde es einfach mal ausprobieren, wie das bei mir aussehen würde. Danke dir auf jeden Fall! Und für die Seite, auf der das nun eingesetzt wird, ist das echt super gelöst .
    Viele Grüße
    Shania

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
  •