Ergebnis 1 bis 32 von 32

Thema: Eventliste in Tabelle ausgeben

  1. #1
    Contao-Fan Avatar von Russe
    Registriert seit
    23.10.2009.
    Beiträge
    729

    Standard Eventliste in Tabelle ausgeben

    Hallo,

    mal wieder ich

    Ich habe auf einer Seite eine Eventliste, diese würde ich aber gerne in einer HTML-Tabelle ausgeben.
    Als Template für die Eventliste verwende ich event_upcoming.tpl
    Dieses Template fängt mit <div class="event was ja bei einer Tabelle eigentlich dem <tr> entsprechen würde, hier kann ich also nicht die Tabelle beginnen, sonst bekomme ich pro ausgegebenem Event ja eine eigene Tabelle.

    Wo muss ich denn die Tabelle dann definieren?
    Russe

  2. #2
    Contao-Urgestein Avatar von Sebastian
    Registriert seit
    19.06.2009.
    Ort
    Stuttgart
    Beiträge
    3.361

    Standard

    HI

    das wäre wohl im Template mod_eventlist.tpl. Aber das gilt dann für alle Eventlisten. Wenn du also mehrere hast, musst du ggf. per PHP abfragen, welches Modul das Template aufruft.

    Aber: Verwende die Tabelle nur, wenn du auch tatsächlich tabellarischen Inhalt darstellen möchtest. Per CSS kann man auch Tabellen simulieren.

    Sebastian
    Ich arbeite beim Linux-Systemhaus ETES in Stuttgart

  3. #3
    Contao-Fan Avatar von Russe
    Registriert seit
    23.10.2009.
    Beiträge
    729

    Standard

    Hi Sebastian,
    mod_eventlist.tpl werde ich mir mal anschauen, danke.
    Bisher habe ich nur eine Eventliste, aber da kommen sicher noch mehrere dazu (multidomain), aber das mit der Modulabfrage mache ich erst dann wenn es wirklich mehrere werden.

    Hmmm, tabellarischer Inhalt, ich würde sagen ja.
    tabelle.png

    Oder siehst du das anders?
    Russe

  4. #4
    Contao-Urgestein Avatar von Sebastian
    Registriert seit
    19.06.2009.
    Ort
    Stuttgart
    Beiträge
    3.361

    Standard

    HI

    überzeugt.

    Sebastian
    Ich arbeite beim Linux-Systemhaus ETES in Stuttgart

  5. #5
    Contao-Fan Avatar von Russe
    Registriert seit
    23.10.2009.
    Beiträge
    729

    Standard



    Ich mache das immer so, wenn ich den einzelnen Spalten einen Titel oder eine Überschrift geben kann, dann kann es auch in eine HTML-Tabelle.
    Russe

  6. #6
    Contao-Fan Avatar von Russe
    Registriert seit
    23.10.2009.
    Beiträge
    729

    Standard

    Zitat Zitat von Sebastian Beitrag anzeigen
    … Wenn du also mehrere hast, musst du ggf. per PHP abfragen, welches Modul das Template aufruft.
    Hallo Sebastian,

    jetzt brauche ich diesen Fall doch, weiß aber nicht genau ob ich das richtig mache.

    Mit
    Code:
    <?php print_r($this); ?>
    habe ich mir mal alles anzeigen lassen das zur Verfügung steht.
    Das einzige das ich hier abfragen kann ist die Klasse:
    Code:
    [class] => mod_eventlist
    Oder gibt es da was anderes über das ich an das Modul selbst rankomme?

    Ich habe auch versucht im Modul selbst eine eigene ID oder Klasse zu vergeben, aber die wird im Quelltext dann gar nicht angezeigt. Seltsam.
    Russe

  7. #7
    Contao-Urgestein Avatar von Sebastian
    Registriert seit
    19.06.2009.
    Ort
    Stuttgart
    Beiträge
    3.361

    Standard

    HI

    hilft das? http://https://contao.org/issues/show/97

    Ansonsten sollten da eigentlich mehr Variablen zu sehen sein. Hast du einen Link (hier oder per PM)?

    Sebastian
    Ich arbeite beim Linux-Systemhaus ETES in Stuttgart

  8. #8
    Contao-Fan Avatar von Russe
    Registriert seit
    23.10.2009.
    Beiträge
    729

    Standard

    Hi Sebastian,

    danke für deinen Link, die Abfrage mit switch werde ich mir merken sobald ich mehr als 2 unterschiedliche Anwendungen des Templates habe.

    Momentan habe ich es so gelöst:
    Code:
    <?php if ($this->cssID == ' id="next_events"'): ?>
    <table border="1" summary="Auflistung der kommenden Veranstaltungen.">
    <tr>
      <th>Datum</th>
      <th>Uhrzeit</th>
      <th>Veranstaltung</th>
    </tr>
    <?php endif; ?>
    
    <?php echo $this->events; ?>
    
    <?php if ($this->cssID == ' id="next_events"'): ?>
    </table>
    <?php endif; ?>
    Ich habe also eine eigene CSS-Id definiert die ich hier abfrage. Zuerst hatte ich diese ID im Modul selbst angegeben, das kam aber im Frontend nicht an. Dann habe ich versucht die eigene ID im Artikel-Element in dem das Modul eingebunden ist zu vergeben, das hat funktioniert.

    Also Problem gelöst sozusagen. Danke. :-)
    Russe

  9. #9
    Contao-Urgestein Avatar von Sebastian
    Registriert seit
    19.06.2009.
    Ort
    Stuttgart
    Beiträge
    3.361

    Standard

    HI

    gerne doch. Viel Spaß noch!

    Sebastian
    Ich arbeite beim Linux-Systemhaus ETES in Stuttgart

  10. #10
    Contao-Nutzer
    Registriert seit
    12.11.2010.
    Beiträge
    178

    HTML Template für aktuellere Contao-Versionen

    Zitat Zitat von Russe Beitrag anzeigen
    Momentan habe ich es so gelöst:
    Code:
    <?php if ($this->cssID == ' id="next_events"'): ?>
    <table border="1" summary="Auflistung der kommenden Veranstaltungen.">
    <tr>
      <th>Datum</th>
      <th>Uhrzeit</th>
      <th>Veranstaltung</th>
    </tr>
    <?php endif; ?>
    
    <?php echo $this->events; ?>
    
    <?php if ($this->cssID == ' id="next_events"'): ?>
    </table>
    <?php endif; ?>
    Vielen Dank, sehr hilfreich.

    Bei neueren Contao-Versionen muss das Template allerdings etwas anders aufgebaut sein:

    mod_eventlist.tpl
    HTML-Code:
    <!-- indexer::stop -->
    <div class="<?php echo $this->class; ?> block"<?php echo $this->cssID; ?><?php if ($this->style): ?> style="<?php echo $this->style; ?>"<?php endif; ?>>
    <?php if ($this->headline): ?>
    
    <<?php echo $this->hl; ?>><?php echo $this->headline; ?></<?php echo $this->hl; ?>>
    <?php endif; ?>
    
    <table border="1" summary="Auflistung der kommenden Veranstaltungen.">
    <tr>
      <th>Datum</th>
      <th>Uhrzeit</th>
      <th>Veranstaltung</th>
    </tr>
    <?php echo $this->events; ?>
    <?php echo $this->pagination; ?>
    </table>
    </div>
    <!-- indexer::continue -->
    event_upcoming_table.tpl
    HTML-Code:
    <tr class="event<?php echo $this->classUpcoming; ?>">
      <td class="date"><?php echo $this->date; ?></td>
      <td class="time"><?php if ($this->time): ?><?php echo $this->time; ?><?php endif; ?></td>
      <td class="title"><a href="<?php echo $this->link; ?>" title="<?php echo $this->title; ?> (<?php if ($this->day): echo $this->day; ?>, <?php endif; echo $this->date; if ($this->time): ?>, <?php echo $this->time; endif;?>)"<?php echo $this->target; ?>><?php echo $this->title; ?></a></td>
    </tr>
    Funktioniert einwandfrei. Vielleicht kann ja jemand etwas damit anfangen.

    Viele Grüße
    JaiBee

  11. #11
    Contao-Nutzer
    Registriert seit
    17.03.2011.
    Ort
    Moers
    Beiträge
    32

    Standard eventlist zeigt keinen Titel bei fehlender Uhrzeit

    Ich habe ein funktionierends Template versehentlich "abgeschossen" und keinen Zugriff mehr darauf. Nun suche ich nach einer gleichartigen Lösung, und zwar Datum bzw. Anfangs- und Enddatum (01.01.2013 - 04.01.2013), Uhrzeit und Titel-Link. Es liegen keine PHP-Kenntnisse vor und meine HTML- und CSS-Kenntnisse sind aus Eurer Sicht minimal, weshalb ich mich selten traue, hier anzufragen.

    In diesem Zuge habe ich JaiBee's Muster ausprobiert, d.h. kopiert und wie folgt ergänzt:

    HTML-Code:
    <div class="event<?php echo $this->classUpcoming; ?>">
    <table>
    <tr class="event<?php echo $this->classUpcoming; ?>">
      <td class="date"><?php echo $this->date; ?></td>
      <td class="time"><?php if ($this->time): ?><?php echo $this->time; ?><?php endif; ?></td>
      <td class="title"><a href="<?php echo $this->link; ?>" title="<?php echo $this->title; ?> (<?php if ($this->day): echo $this->day; ?>, <?php endif; echo $this->date; if ($this->time): ?>, <?php echo $this->time; endif;?>)"<?php echo $this->target; ?>><?php echo $this->title; ?></a></td>
    </tr>
    <?php echo $this->events; ?>
    </table>
    <?php endif; ?>
    </div>
    Wenn das Event keine Uhrzeit beinhaltet, wird auch der Titel nicht angezeigt. Leider habe ich das gleiche Problem bei event_upcoming.tpl (siehe www.tc-asberg.de).

  12. #12
    Contao-Nutzer
    Registriert seit
    12.11.2010.
    Beiträge
    178

    Standard

    Zitat Zitat von Goodwill Beitrag anzeigen
    Es liegen keine PHP-Kenntnisse vor und meine HTML- und CSS-Kenntnisse sind aus Eurer Sicht minimal, weshalb ich mich selten traue, hier anzufragen.
    Genau dafür sind Foren wie dieses da. Mangelnde Kenntnisse müssen dir wirklich nicht unangenehm sein. Nur die Bereitschaft, etwas dazuzulernen und etwas Mitdenken wird gerne gesehen .

    Zitat Zitat von Goodwill Beitrag anzeigen
    Nun suche ich nach einer gleichartigen Lösung, und zwar Datum bzw. Anfangs- und Enddatum (01.01.2013 - 04.01.2013), Uhrzeit und Titel-Link.
    Ich hab gerade die genauen Variablen nicht im Kopf, aber mit folgendem Schnippsel kannst du dir sie im Frontend ausgeben und die passenden heraussuchen:
    HTML-Code:
    <?php echo '<pre>' . $this->showTemplateVars() . '</pre>'; ?>
    Viele Grüße

    Zitat Zitat von Goodwill Beitrag anzeigen
    In diesem Zuge habe ich JaiBee's Muster ausprobiert, d.h. kopiert und wie folgt ergänzt:
    […]
    Wenn das Event keine Uhrzeit beinhaltet, wird auch der Titel nicht angezeigt. Leider habe ich das gleiche Problem bei event_upcoming.tpl (siehe www.tc-asberg.de).
    Dass der Titel nicht angezeigt wird, kann ich nicht nachvollziehen. Konnte auf die Schnelle keinen Fehler in deinem Quellcode entdecken. Probier's mal mit folgendem; ist eigentlich das gleiche, nur ist der Code etwas kompakter.
    HTML-Code:
    <div class="event<?php echo $this->classUpcoming; ?>">
    <table>
    <tr class="event<?php echo $this->classUpcoming; ?>">
      <td class="date"><?php echo $this->date; ?></td>
      <td class="time"><?php echo ($this->time) ? $this->time : ''; ?></td>
      <td class="title"><a href="<?php echo $this->link; ?>" title="<?php echo $this->time; echo ' ('; echo ($this->day) ? $this->day . ', ' : ''; echo $this->date; echo ($this->time) ? ', ' . $this->time : ''; ?>)"<?php echo $this->target; ?>><?php echo $this->time; ?></a></td>
    </tr>
    <?php echo $this->events; ?>
    </table>
    <?php endif; ?>
    </div>
    Dieses
    PHP-Code:
    echo ($this->foo) ? $this->foo ''
    ist übrigens eine "Kurzschreibweise" (ist auch Geschmackssache) für
    PHP-Code:
    if ($this->foo):
        echo 
    $this->foo;
    else: 
    // kann man in diesem Fall
        
    echo ''// auch weglassen
    endif;

    // bzw.
    if ($this->foo){
        echo 
    $this->foo;
    else{
        echo 
    '';
    }; 
    Viele Grüße

  13. #13
    Contao-Nutzer
    Registriert seit
    17.03.2011.
    Ort
    Moers
    Beiträge
    32

    Standard eventlist zeigt keinen Titel bei fehlender Uhrzeit

    Hallo JaiBee,

    zunächst einmal vielen Dank für Deine schnelle Hilfe, die ich leider erst spät bemerkt habe.

    Um Dir die wenigen Kenntnisse einmal klar zu machen, wenn Du schreibst:
    Ich hab gerade die genauen Variablen nicht im Kopf, aber mit folgendem Schnippsel kannst du dir sie im Frontend ausgeben und die passenden heraussuchen: ....
    , dann weiß ich schon nicht, wo ich diesen Code einfügen muss, um ihn auslesen zu können. Ich habe seit mindestens 1 Jahr nur noch die Inhalte bearbeitet und schon wieder größtenteils vergessen, was ich mir mühevoll angelesen und auf DVD's angesehen habe.

    Allerdings habe ich mittlerweile Deinen neuen Code:
    Probier's mal mit folgendem; ist eigentlich das gleiche, nur ist der Code etwas kompakter...
    versucht.

    Ich habe ihn kopiert,
    in das Template "event_upcoming_table" anstelle Deines vorherigen Codes eingefügt und gespeichert,
    das Modul, das die Eventlist in meine Seite einfügt, auf dieses Template umgestellt (bis zur Lösung des Problems nehme ich immer wieder event_upcoming, damit überhaupt etwas an dieser Stelle steht).

    Das Ergebnis:
    Die Seite wurde komplett leergefegt (keine Kopfzeile, nichts), ein erneuter Aufruf meldet, dass sie nicht angezeigt werden kann. Darum habe ich schnell wieder auf event_upcoming gewechselt.

    Mir war bislang nicht bewußt, dass ein Modul, das nicht korrekt angezeigt werden kann, die ganze Seite außer Kraft setzt.

  14. #14
    Contao-Nutzer
    Registriert seit
    12.11.2010.
    Beiträge
    178

    Standard

    Zitat Zitat von Goodwill Beitrag anzeigen
    weiß ich schon nicht, wo ich diesen Code einfügen muss, um ihn auslesen zu können.
    Muss direkt in dem Template eingefügt werden, zu dem du Informationen benötigst; in diesem Fall in event_upcoming_*.tpl.



    Zitat Zitat von Goodwill Beitrag anzeigen
    Die Seite wurde komplett leergefegt (keine Kopfzeile, nichts), ein erneuter Aufruf meldet, dass sie nicht angezeigt werden kann. Darum habe ich schnell wieder auf event_upcoming gewechselt.
    Das kann passieren, wenn der PHP-Code fehlerhaft ist.

    Ich hab wohl nun den Fehler entdeckt: du hast die verschiedenen Event-Templates durcheinander gebracht / vermischt. Es gibt nämlich zum einen das Grundgerüst (in der von dir eingesetzten Contao-Version mod_eventlist.tpl (s.o.)) und dann noch ein Template für die Auflistung einer einzelnen Veranstaltung in der Tabelle (event_upcoming_table.tpl (s.o.)), welches im Backend in den Moduleinstellungen festgelegt wird.
    Halte dich bitte ganz genau an meinen Beitrag von oben.

    In die mod_eventlist.tpl kommen nur die Spaltenüberschriften mit rein (Datum | Uhrzeit | Veranstaltung). Alles andere muss in die event_upcoming_*.tpl. Es überrascht mich, dass es, so wie du es bislang umgesetzt hast, überhaupt funktioniert .

    Zögere nicht, zu fragen, wenn noch etwas unklar ist.

    Wünsche viel Erfolg,
    Gruß JaiBee

  15. #15
    Contao-Nutzer
    Registriert seit
    17.03.2011.
    Ort
    Moers
    Beiträge
    32

    Standard eventlist zeigt keinen Titel bei fehlender Uhrzeit - Problem gelöst

    Hallo JaiBee,

    vielen Dank für Deine erfolgreiche Hilfe!!

    Ich habe es nicht auf Anhieb verstanden, zumal ich ursprünglich gar keine Spaltenüberschriften einsetzen wollte. Nun ist mir aber einiges klarer geworden. Jedenfalls habe ich den Aufbau nun wieder mit
    PHP-Code:
    <table>
    <tr class="event<?php echo $this->classUpcoming?>">
      <td class="date"><?php echo $this->date?></td>
      <td class="time"><?php if ($this->time): ?><?php echo $this->time?> Uhr<?php endif; ?></td            >
      <td class="title"><a href="<?php echo $this->link?>" title="<?php echo $this->title?> (<?php if ($this->day): echo $this->day?><?php endif; echo $this->date; if ($this->time): ?><?php echo $this->time; endif;?>)"<?php echo $this->target?>><?php echo $this->title?></a></td>
    </tr>
    </table>
    wie gewünscht erhalten und werde jetzt vesuchen, die verschieden Eventlisten unterschiedlich mit CSS zu formatieren. Damit begann mein Problem. Ich hatte einen Artikel mit dem Eventmodul die ID "jahresuebersicht" gegeben (nachdem andere Versuche, wie bei Russe, nicht funktionierten), konnte die ID in Firebug auch an der richtigen Stelle sehen, aber meine CSS-Anweisungen griffen nicht.

    Viele Grüße

  16. #16
    Contao-Nutzer
    Registriert seit
    12.11.2010.
    Beiträge
    178

    Standard

    Zitat Zitat von Goodwill Beitrag anzeigen
    vielen Dank für Deine erfolgreiche Hilfe!!
    Bitte, gern geschehen.

    Zitat Zitat von Goodwill Beitrag anzeigen
    Ich habe es nicht auf Anhieb verstanden, zumal ich ursprünglich gar keine Spaltenüberschriften einsetzen wollte. Nun ist mir aber einiges klarer geworden. Jedenfalls habe ich den Aufbau nun wieder mit
    Die Spaltenüberschriften sind optional. Die Tags <table> und </table> gehören allerdings nicht in die event_upcoming_*.tpl, sondern sollten in die mod_eventlist.tpl, da sonst jede Zeile eine eigenständige Tabelle darstellt.

    Zitat Zitat von Goodwill Beitrag anzeigen
    werde jetzt vesuchen, die verschieden Eventlisten unterschiedlich mit CSS zu formatieren. Damit begann mein Problem. Ich hatte einen Artikel mit dem Eventmodul die ID "jahresuebersicht" gegeben (nachdem andere Versuche, wie bei Russe, nicht funktionierten), konnte die ID in Firebug auch an der richtigen Stelle sehen, aber meine CSS-Anweisungen griffen nicht.
    Auch das sollte lösbar sein. Mach dazu aber am besten einen neuen Thread auf, falls du nicht weiterkommst.

    Viele Grüße

  17. #17
    Contao-Nutzer
    Registriert seit
    17.03.2011.
    Ort
    Moers
    Beiträge
    32

    Standard eventlist in Tabelle ausgeben

    Hallo,

    ich bin nicht sicher, ob diese Anfrage noch unter dieses Thema gehört. Falls nicht, gebt mir bitte einen Tipp.

    Wie bereits erwähnte, hat die Ausgabe der Eventlist in einer Tabelle funktioniert. (Ich habe auch mittlerweile verstanden, dass ich der ganzen Seite eine ID geben muss, anstatt dem Element, in dem das Modul eingefügt wurde, um die verschiedenen Eventlisten, die auf unterschiedlichen Seiten erscheinen, individuell zu formatieren.)

    In dem Template "eventlist_upcoming_table.tpl" habe ich hinter time mit " Uhr" das Wort Uhr ausgeben lassen. Auf der Startseite unserer Homepage http://www.tc-asberg.de/index.php/home.html sind die Einträge bündig untereinander. In der Terminübersicht http://www.tc-asberg.de/index.php/terminuebersicht.htm habe ich die Spalte mit der Uhrzeit rechtsbündig ausgerichtet und mit 10 px padding-right versehen. Hier verspringt der Text der darauffolgenden Spalte sowohl innerhalb gleicher Einträge, als auch abweichender Einträge (mit Uhrzeit und ohne Uhrzeit).

    Woran liegt das?

    Viele Grüße

  18. #18
    Contao-Nutzer
    Registriert seit
    12.11.2010.
    Beiträge
    178

    Standard

    Zitat Zitat von Goodwill Beitrag anzeigen
    Hier verspringt der Text der darauffolgenden Spalte sowohl innerhalb gleicher Einträge, als auch abweichender Einträge (mit Uhrzeit und ohne Uhrzeit).
    Ich bin mir nicht sicher, ob ich dich richtig verstanden habe, aber meinst du z.B. die Veranstaltung vom "14.09.2013 - 15.09.2013", bei der sich der Titel über 2 Zeilen erstreckt? Das würde einfach daran liegen, dass die Spalte zu schmal ist… Oder meinst du etwas anderes; sieht nämlich eigentlich ganz passabel aus.

    Gruß

  19. #19
    Contao-Urgestein
    Registriert seit
    30.01.2011.
    Ort
    Stuttgart
    Beiträge
    4.138

    Standard

    villeicht hilft auch schon ein Leerzeichen in Form von:
    PHP-Code:
    <td class="time"><?php if ($this->time): ?><?php echo $this->time?> Uhr<?php else: echo "&nbsp;" ?><?php endif; ?></td>
    aufjedenfall wäre es schöner wenn zwischen td und schließendem > nicht soviel spaces (Lerrzeichen) wären am Ende der Zeile.
    Geändert von magicsepp (23.02.2013 um 08:26 Uhr)

  20. #20
    Contao-Nutzer
    Registriert seit
    17.03.2011.
    Ort
    Moers
    Beiträge
    32

    Standard eventlist in Tabelle ausgeben - Textversprung

    Hallo JaiBee,

    ich meinte nicht die Startseite, sondern die Seite Terminübersicht. Hier wird bei mir in Firefox und im Internet Explorer der Text der letzten Spalte (Titel) links unterschiedlich eingerückt, so dass er nicht bündig untereinandersteht.

    Anfangs dachte ich, es liegt daran, dass nicht jeder Termin über eine Uhrzeit verfügt. Aber wenn man genau hinschaut, ist schon die Aufstellung der Termine mit Uhrzeit nicht bündig.

    Viele Grüße

  21. #21
    Contao-Nutzer
    Registriert seit
    17.03.2011.
    Ort
    Moers
    Beiträge
    32

    Standard eventlist in Tabelle ausgeben - Textversprung

    Hallo magicsepp,

    danke für Deinen Tipp, leider hat es nicht geklappt. Wenn ich den Code gegen den ursprünglichen in der Zeile "Time" austausche, wird wieder die ganze Seite abgeschossen.

    Die Leerzeichen vor dem schließenden ">" waren ein Versehen, sie sind erst beim Kopieren in dieses Forum entstanden, und wurden von mir gar nicht bemerkt.

    Viele Grüße

  22. #22
    Contao-Urgestein
    Registriert seit
    30.01.2011.
    Ort
    Stuttgart
    Beiträge
    4.138

    Standard

    ahhh da fehlt der : hinter else habs oben korrigiert.

  23. #23
    Contao-Nutzer
    Registriert seit
    12.11.2010.
    Beiträge
    178

    Standard

    Hallo Goodwill,

    entferne das <table> und </table> aus event_upcoming_*.tpl, wie oben geschildert, da sonst jede Zeile unabhängig von den anderen ist, was zu minimal unterschiedlich breiten Spalten führt (wodurch die Spalten nicht bündig erscheinen). Das Einfügen eines Leerzeichens sollte nicht notwendig sein, schadet aber auch nicht.

    Momentan sieht der Quelltext der Website wie folgt aus:

    HTML-Code:
    <table>
    <tr class="event even first cal_4">
      <td class="date">08.03.2013</td>
      <td class="time">19:30 Uhr</td>
      <td class="title"><a href="…" title="…"></a></td>
    </tr>
    </table> /*  !! */
    <table>  /*  !! */
    <tr class="event odd cal_4">
      <td class="date">13.03.2013</td>
      <td class="time"></td>
      <td class="title"><a href="…" title="…"></a></td>
    </tr>
    </table>
    Nach der Änderung sieht es dann so aus:
    HTML-Code:
    <table>
    <tr class="event even first cal_4">
      <td class="date">08.03.2013</td>
      <td class="time">19:30 Uhr</td>
      <td class="title"><a href="…" title="…"></a></td>
    </tr>
    <tr class="event odd cal_4">
      <td class="date">13.03.2013</td>
      <td class="time"></td>
      <td class="title"><a href="…" title="…"></a></td>
    </tr>
    </table>
    Was zu einer Darstellung wie im Anhang führt (getestet mit Firebug).

    Gruß
    Angehängte Grafiken Angehängte Grafiken

  24. #24
    Contao-Nutzer
    Registriert seit
    17.03.2011.
    Ort
    Moers
    Beiträge
    32

    Standard

    Hallo JaiBee,

    vielen Dank für Deine Hilfe. Ich bin leider erst heute dazu gekommen, mich wieder mit diesem Thema zu befassen. Deinen ursprünglichen Hinweis, dass <table> und </table> nicht in die event_upcoming_table.tpl gehört, hatte ich überlesen. Mir leuchtet die Erklärung auch ein. Wenn ich diesen Eintrag jedoch lösche, erhalte ich folgende fehlerhafte Darstellung:

    Startseite ohne table.JPG

    Jahrsübersicht ohne table.JPG

    Jahresübersicht Quelltext ohne table.JPG

    Hast Du dafür eine Erkärung?

    Viele Grüße

  25. #25
    Contao-Nutzer
    Registriert seit
    17.03.2011.
    Ort
    Moers
    Beiträge
    32

    Standard

    Hallo magicsepp,

    vielen Dank für Deinen Tipp, leider kam ich damit zu dem gleichen unerwünschten Ergebnis wie bei meiner Variante. Aber macht mir verständlich, dass ein kleines Fehlendes Zeichen eine ganze Seite unbrauchbar machen kann.

    Viele Grüße

  26. #26
    Contao-Nutzer
    Registriert seit
    12.11.2010.
    Beiträge
    178

    Standard

    Zitat Zitat von Goodwill Beitrag anzeigen
    Deinen ursprünglichen Hinweis, dass <table> und </table> nicht in die event_upcoming_table.tpl gehört, hatte ich überlesen. Mir leuchtet die Erklärung auch ein. Wenn ich diesen Eintrag jedoch lösche, erhalte ich folgende fehlerhafte Darstellung:

    […]

    Hast Du dafür eine Erkärung?
    Lese meine Beiträge bitte etwas aufmerksamer:
    Die Tags <table> und </table> gehören allerdings nicht in die event_upcoming_*.tpl, sondern sollten in die mod_eventlist.tpl
    Mir ist auch nicht klar, warum du zusätzlich noch <tr> und <td> entfernt hast. Da bleibt ja von einer Tabelle rein gar nichts mehr übrig…

    Gruß

  27. #27
    Contao-Nutzer
    Registriert seit
    17.03.2011.
    Ort
    Moers
    Beiträge
    32

    Standard

    Hallo JaiBee,

    das ist es ja gerade, ich habe <tr> und <td> nicht enfternt!!

    Lediglich die erste Zeile <table> und die letzte Zeile </table>. Und weil Contao dann nicht auf <tr> und <td> reagierte bzw. diese gar nicht verwendete, ging ich davon aus, dass diese immer in <table> und </table> eingeschlossen sein müssten.

    Viele Grüße

  28. #28
    Contao-Nutzer
    Registriert seit
    12.11.2010.
    Beiträge
    178

    Standard

    Sorry, aber irgendetwas musst du dennoch falsch gemacht haben; anders ist Jahresübersicht Quelltext ohne table.JPG nicht zu erklären.
    mod_eventlist.tpl und event_upcoming_table.tpl müssen prinzipiell wie oben beschrieben aussehen.

    Poste hier bitte die beiden Templates, falls es noch nicht funktioniert.

    Gruß

  29. #29
    Contao-Nutzer
    Registriert seit
    17.03.2011.
    Ort
    Moers
    Beiträge
    32

    Standard

    Hallo JaiBee,

    das Template "mod_eventlist.tpl" war in meiner Templateaufstellung gar nicht enthalten. Ich hatte es auch nicht neu angelegt, weil ich keine Spaltenüberschriften vergeben wollte, wie es bei Russe der Fall war.

    Nun habe ich es neu hinzugefügt, ohne es zu bearbeiten. Das hilft auch nicht weiter.

    Neu hinzugefügts Tempalte mod_eventlist.tpl:
    Code:
    <!-- indexer::stop -->
    <div class="<?php echo $this->class; ?> block"<?php echo $this->cssID; ?><?php if ($this->style): ?> style="<?php echo $this->style; ?>"<?php endif; ?>>
    <?php if ($this->headline): ?>
    
    <<?php echo $this->hl; ?>><?php echo $this->headline; ?></<?php echo $this->hl; ?>>
    <?php endif; ?>
    <?php echo $this->events; ?>
    <?php echo $this->pagination; ?>
    
    </div>
    <!-- indexer::continue -->
    <table> und </table> muss ich so lange immer wieder in den nachfolgend aufgeführten Quelltext schreiben, bis der Fehler (weshalb <tr> und <td> nicht erkannt werden) gefunden ist, weil diese Darstellung besser ist, als die ungeordnete.

    Template event_upcoming_table.tpl
    Code:
    <table>
    <tr class="event<?php echo $this->classUpcoming; ?>">
      <td class="date"><?php echo $this->date; ?></td>
      <td class="time"><?php if ($this->time): ?><?php echo $this->time; ?> Uhr<?php endif; ?></td>
      <td class="title"><a href="<?php echo $this->link; ?>" title="<?php echo $this->title; ?> (<?php if ($this->day): echo $this->day; ?>, <?php endif; echo $this->date; if ($this->time): ?>, <?php echo $this->time; endif;?>)"<?php echo $this->target; ?>><?php echo $this->title; ?></a></td>
    </tr>
    </table>
    Es tut mir leid, dass ich Dir so viel Arbeit mache.

    Viele Grüße

  30. #30
    Contao-Nutzer
    Registriert seit
    12.11.2010.
    Beiträge
    178

    Standard

    Zitat Zitat von Goodwill Beitrag anzeigen
    das Template "mod_eventlist.tpl" war in meiner Templateaufstellung gar nicht enthalten. Ich hatte es auch nicht neu angelegt, weil ich keine Spaltenüberschriften vergeben wollte, wie es bei Russe der Fall war.
    "mod_eventlist.tpl" wird nicht nur für die Spaltenüberschriften benötigt (oder auch nicht), sondern muss auch den öffnenden und schließenden table-Tag enthalten, welcher bei dir noch fehlt.

    Die endgültige Ausgabe im Frontend, also auf der Website, funktioniert ungefähr so:
    • "mod_eventlist.tpl" wird eingebunden
    • in diesem wird $this->events; für jede einzelne Veranstaltung durch "event_upcoming_table.tpl" ersetzt

    Daher enthält "event_upcoming_table.tpl" nur einzelne Tabellenzeilen (<tr>…</tr>), welche von <table>…</table> aus dem übergeordneten Template "mod_eventlist.tpl" umschlossen werden.
    Ist klar, wie ich das meine? Mir ist es wichtig, dass du dieses Prinzip verstehst .


    Daraus ergibt sich nun, dass deine beiden Templates wie folgt aussehen müssen:

    HTML-Code:
    <!-- indexer::stop -->
    <div class="<?php echo $this->class; ?> block"<?php echo $this->cssID; ?><?php if ($this->style): ?> style="<?php echo $this->style; ?>"<?php endif; ?>>
    <?php if ($this->headline): ?>
    
    <<?php echo $this->hl; ?>><?php echo $this->headline; ?></<?php echo $this->hl; ?>>
    <?php endif; ?>
    <table>					<!-- tabelle start -->
    <?php echo $this->events; ?>		<!-- tabellenzeilen, also tr…/tr für jede veranstaltung -->
    </table>				<!-- tabelle ende -->
    <?php echo $this->pagination; ?>
    
    </div>
    <!-- indexer::continue -->

    HTML-Code:
    <tr class="event<?php echo $this->classUpcoming; ?>">
      <td class="date"><?php echo $this->date; ?></td>
      <td class="time"><?php if ($this->time): ?><?php echo $this->time; ?> Uhr<?php endif; ?></td>
      <td class="title"><a href="<?php echo $this->link; ?>" title="<?php echo $this->title; ?> (<?php if ($this->day): echo $this->day; ?>, <?php endif; echo $this->date; if ($this->time): ?>, <?php echo $this->time; endif;?>)"<?php echo $this->target; ?>><?php echo $this->title; ?></a></td>
    </tr>
    Viele Grüße,
    JaiBee

  31. #31
    Contao-Nutzer
    Registriert seit
    17.03.2011.
    Ort
    Moers
    Beiträge
    32

    Standard

    Hallo JaiBee,

    ich habe das Prinzip des umschließenden Elements verstanden. Es hat auch funktioniert, vielen Dank!!! Ich habe Deine Kommentare übernommen, um mich auch später noch daran zu erinnern warum ich das in dem Template ergänzt habe. Dieser Zusammenhang hätte sich mir aber auf keinen Fall selbst erschlossen.

    Vielleicht sollte ich mich doch einmal nach einem PHP-Kurs umsehen, um den Code besser deuten zu können. Mittels Buch und Selbstlernmethode bin ich schon vor ein paar Jahren gescheitert.

    Danke für Deine Geduld.

    Viele Grüße

  32. #32
    Contao-Nutzer
    Registriert seit
    12.11.2010.
    Beiträge
    178

    Standard

    Hallo Goodwill,

    schön, dass es geklappt hat. PHP-Grundlagen werden nicht schaden, aber vieles hat mit der grundlegenden Funktionsweise von Contao zu tun, was dann natürlich in keinem PHP-Buch steht. Abgesehen von der Contao-Dokumentation und dem Wiki kann ich dir keine Anlaufstelle nennen. Vieles lernt man auch einfach "spielerisch" durch Ausprobieren und mit Hilfe des Forums. So, wie du es getan hast .

    Viele Grüße,
    JaiBee

Aktive Benutzer

Aktive Benutzer

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

Ähnliche Themen

  1. Eventliste nach Monaten ausgeben
    Von retsina im Forum Nachrichten/Events/FAQ
    Antworten: 68
    Letzter Beitrag: 28.08.2017, 13:05
  2. Tabelle im Backend ausgeben
    Von agnat im Forum Allgemeine Inhaltselemente
    Antworten: 1
    Letzter Beitrag: 12.03.2010, 06:21
  3. Inhaltselement Tabelle: Aussehen der Tabelle beeinflussen?
    Von jscholtysik im Forum Allgemeine Inhaltselemente
    Antworten: 5
    Letzter Beitrag: 28.02.2010, 20:32
  4. Allgemeine Fragen: Nachrichten ausgeben, FAQ ausgeben
    Von Chris87 im Forum Nachrichten/Events/FAQ
    Antworten: 8
    Letzter Beitrag: 11.12.2009, 20:33
  5. CSS - Eventliste
    Von Acta im Forum Nachrichten/Events/FAQ
    Antworten: 7
    Letzter Beitrag: 23.09.2009, 16:22

Lesezeichen

Lesezeichen

Berechtigungen

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