Contao-Camp 2024
Ergebnis 1 bis 11 von 11

Thema: Navigation mit Seitenbschreibung

  1. #1
    Contao-Nutzer
    Registriert seit
    24.04.2018.
    Ort
    Zürich
    Beiträge
    3

    Standard Navigation mit Seitenbschreibung

    Liebe Contao Community

    Ich habe eine Frage betreffend einer Navigation:
    Und zwar gestalte ich gerade eine Seite um mit einer grossen und tiefen Seitenstruktur. Die alte Seite läuft mit Contao 3.1, die neue mit Contao 4.4.
    Nun ist es so dass ich folgende Navigation in den einzelnen Seiten haben möchte, mit der man dann tiefer in die Seitenstruktur gelangt:

    - [Seitentitel1]
    [Seitenbeschreibung]

    - [Seitentitel2]
    [Seitenbeschreibung]

    ...

    Bei der älteren Contao Version (3.1) konnten wir das mit der Erweiterung Dynamic Page Teaser lösen, habt Ihr eine Idee wie man das bei Contao 4.4 lösen könnte?
    Habe versucht das ganze mit Anpassungen am NavigationsTemplate zu lösen, jedoch weiss ich nicht, wie ich die Seitenbeschreibung reinbekomme.

    Viele Grüsse

  2. #2
    Contao-Fan Avatar von Stefko
    Registriert seit
    25.10.2012.
    Ort
    Karlsruhe
    Beiträge
    771
    User beschenken
    Wunschliste

    Standard

    Ahoi,

    du könntest das durch eine Modifikation der nav_default.html5 lösen, so dass nicht nur der Seitenname sondern auch der Seitentitel ausgegeben wird und eben diesen als Beschreibung verwenden.
    Den Seitentitel kannst Du zB mittels
    PHP-Code:
    <strong class="pagedescription"><?php echo $item['pageTitle']; ?></strong>
    ausgeben.

    --
    Edit: span durch strong ersetzt, da es sich ja um Contao 4.4.x handelt
    Geändert von Stefko (24.04.2018 um 11:27 Uhr)
    Grüße, Stefko

  3. #3
    Contao-Fan Avatar von fusch
    Registriert seit
    25.03.2012.
    Ort
    München
    Beiträge
    498
    Contao-Projekt unterstützen

    Support Contao

    Standard Template anpassen

    Hallo Reendow,

    Du kannst das Template nav_default.html5 anpassen:

    Code:
    <ul class="<?= $this->level ?>">
      <?php foreach ($this->items as $item): ?>
      
        <?php if ($item['isActive']): ?>
             <li class="<?= $item['class'] ?>">
             	<strong class="<?= $item['class'] ?>"<?php if (!empty($item['subitems'])) echo ' aria-haspopup="true"'; ?> itemprop="name">
             		<?= $item['link'] ?><br/><?= $item['pageTitle'] ?>
             	</strong>
             	<?= $item['subitems'] ?>
          	</li>
          
        <?php else: ?>
          <li<?php if ($item['class']) echo ' class="' . $item['class'] . '"'; ?>>
          	<a href="<?= $item['href'] ?: './' ?>" title="<?= $item['pageTitle'] ?: $item['title'] ?>"<?php if ($item['class']) echo ' class="' . $item['class'] . '"'; ?><?php if ($item['accesskey']) echo ' accesskey="' . $item['accesskey'] . '"'; ?><?php if ($item['tabindex']) echo ' tabindex="' . $item['tabindex'] . '"'; ?><?php if ($item['nofollow']) echo ' rel="nofollow"'; ?><?= $item['target'] ?><?php if (!empty($item['subitems'])) echo ' aria-haspopup="true"'; ?> itemprop="url">
          		<span itemprop="name"><?= $item['link'] ?>
          		<br/><?= $item['pageTitle'] ?>
          		</span>
          	</a>
          	<?= $item['subitems'] ?>
          </li>
        <?php endif; ?>
        
      <?php endforeach; ?>
    </ul>
    Es gibt zwei Stellen, an denen ich "<br/><?= $item['pageTitle'] ?>" eingefügt habe, die den Seitentitel ergänzen.

    Gruß
    Hella
    Mitglied des Contao User Treffen München
    Aktuelle Termine erfährst Du immer unter www.contao-bayern.de
    Komm' doch mal vorbei!

  4. #4
    Contao-Nutzer
    Registriert seit
    24.04.2018.
    Ort
    Zürich
    Beiträge
    3

    Standard

    Vielen Dank für eure schnelle Hilfe

    Jedoch möchte ich unter den Seitennamen der Navigation jeweils die Seitenbeschreibung anzeigen lassen welche unter der Seitenstruktur > Metadaten vergeben werden kann.
    Das wichtige ist eigentlich, dass wenn der Besucher tiefer in die Seitenstruktur gelangen möchte, sich über die einzelnen Produkte bereits vorher einen kleinen Überblick verschaffen kann durch die Stichwörter unter den Navigationspunkten.

  5. #5
    Contao-Fan Avatar von Stefko
    Registriert seit
    25.10.2012.
    Ort
    Karlsruhe
    Beiträge
    771
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von Reendow Beitrag anzeigen
    Vielen Dank für eure schnelle Hilfe

    Jedoch möchte ich unter den Seitennamen der Navigation jeweils die Seitenbeschreibung anzeigen lassen welche unter der Seitenstruktur > Metadaten vergeben werden kann.
    Das wichtige ist eigentlich, dass wenn der Besucher tiefer in die Seitenstruktur gelangen möchte, sich über die einzelnen Produkte bereits vorher einen kleinen Überblick verschaffen kann durch die Stichwörter unter den Navigationspunkten.
    Dann verwende 'description' anstatt 'pageTitle' also <strong class="pagedescription"><?php echo $item['description']; ?></strong>
    Grüße, Stefko

  6. #6
    Contao-Nutzer
    Registriert seit
    24.04.2018.
    Ort
    Zürich
    Beiträge
    3

    Standard

    Klappt, perfekt. Vielen Dank!

  7. #7
    Contao-Urgestein Avatar von Andreas
    Registriert seit
    19.06.2009.
    Ort
    Mönchengladbach
    Beiträge
    7.703
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Anstatt
    PHP-Code:
    <?= $item['pageTitle'?>
    Kannst du auch mal das hier machen:
    PHP-Code:
    <?php
      print_r
    ($item);
    ?>
    Bitte!
    Vor Anfragen im Forum HTML validieren.
    Codesnippets hier im Froum sauber einrücken. Nur Tabs o. nur Leerzeichen verwenden.

    Vielen Dank an alle Wunschlistenerfüller
    Andreas Burg, Web Solutions

  8. #8
    Contao-Fan Avatar von Stefko
    Registriert seit
    25.10.2012.
    Ort
    Karlsruhe
    Beiträge
    771
    User beschenken
    Wunschliste

    Standard

    Moin,
    Zitat Zitat von Andreas Beitrag anzeigen
    Anstatt
    PHP-Code:
    <?= $item['pageTitle'?>
    Kannst du auch mal das hier machen:
    PHP-Code:
    <?php
      print_r
    ($item);
    ?>
    Höööh?!?
    Hast Du das mal ausprobiert?
    Grüße, Stefko

  9. #9
    Contao-Urgestein Avatar von Andreas
    Registriert seit
    19.06.2009.
    Ort
    Mönchengladbach
    Beiträge
    7.703
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Ja, so braucht man nicht zu fragen wie die Variable heißt, sondern kann selber sehen, dass eine Variable ->description zur Verfügung steht War nur für die Leute gedacht, die sich vielleicht wundern, warum wir die Variablen auswendig kennen. So kann man sie selber herausfinden. Sollte man sich natürlich im Quellcode ansehen.

    Oder in Contao 4 ganz oben folgende Zeile einfügen und auf example.org/app_dev.php/meineSeite.html ausprobieren.
    PHP-Code:
    <?php $this->showTemplateVars() ?>
    Geändert von Andreas (25.04.2018 um 19:13 Uhr)
    Bitte!
    Vor Anfragen im Forum HTML validieren.
    Codesnippets hier im Froum sauber einrücken. Nur Tabs o. nur Leerzeichen verwenden.

    Vielen Dank an alle Wunschlistenerfüller
    Andreas Burg, Web Solutions

  10. #10
    Contao-Fan Avatar von Stefko
    Registriert seit
    25.10.2012.
    Ort
    Karlsruhe
    Beiträge
    771
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von Andreas Beitrag anzeigen
    Ja, so braucht man nicht zu fragen wie die Variable heißt, sondern kann selber sehen, dass eine Variable ->description zur Verfügung steht War nur für die Leute gedacht, die sich vielleicht wundern, warum wir die Variablen auswendig kennen. So kann man sie selber herausfinden.
    Ach so
    In solch einem Fall füge ich im Zweifel immer ein
    PHP-Code:
     <?php 
         $this
    ->showTemplateVars(); 
    ?>
    In das entsprechende Template ein. War nur leicht verwirrt, bzgl Deiner Antwort [emoji12][emoji1360]


    Gesendet von iPhone mit Tapatalk Pro
    Grüße, Stefko

  11. #11
    Contao-Urgestein Avatar von Andreas
    Registriert seit
    19.06.2009.
    Ort
    Mönchengladbach
    Beiträge
    7.703
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Ja, das geht auch, aber dann hat man alle Template-Variablen. So sieht man nur die Variablen $item innerhalb des Loops. Das macht es übersichtlicher.

    In Contao 3.5 konnte man da immer schön
    PHP-Code:
    dump($item); 
    benutzen. Das hat automatisch einen <pre></pre> um die Ausgabe gesetzt und automatisch einzelne Variablen mit var_dump() und Arrays mit print_r() ausgegeben. Das geht in Contao 4 nicht mehr, aber dafür ist die Ausgabe mit showTemplateVars() jetzt in 4 schön formatiert am Ende der Seite zu sehen, wenn man auf app_dev.php ist.
    Bitte!
    Vor Anfragen im Forum HTML validieren.
    Codesnippets hier im Froum sauber einrücken. Nur Tabs o. nur Leerzeichen verwenden.

    Vielen Dank an alle Wunschlistenerfüller
    Andreas Burg, Web Solutions

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
  •