TYPO3 Extension tt_news: Uhrzeit nicht anzeigen, wenn keine Zeit festgelegt wurde. Anzeige der Uhrzeit 00:00 unterdrücken.

Bei einem Projekt sollte die TYPO3 Extension tt_news für die Anzeige von Terminen verwendet werden. Dabei sollte das Erstelldatum als Datum eines Termins missbraucht werden. Da aber nicht jeder Termin eine Uhrzeit hatte, kam es zu dem unschönen Effekt, dass bei einem Termin ohne Zeitangabe die Uhrzeit immer mit 00:00 angezeigt wurde. Eine Webrecherche ergab, dass schon verschiedene andere das gleiche Problem hatten, aber eine Lösung nicht zu finden war. Den Zeitplatzhalter generell aus dem Template zu entfernen war keine Lösung, da ja bei Terminen mit einer Zeitangabe die Uhrzeit angezeigt werden sollte. Die Lösung musste also folgendermaßen aussehen: Wenn bei einem Newsartikel (Termin) eine Uhrzeit festgelegt wird, soll diese angezeigt werden. Wenn keine Uhrzeit festgelegt wurde, bzw. die Uhrzeit auf 00:00 steht, dann soll keine Uhrzeit angezeigt werden.

tt_news Anzeige mit Uhrzeit 00:00
Anzeige mit Uhrzeit 00:00
tt_news ohne Uhrzeit 00:00
Anzeige ohne Uhrzeit 00:00

Nach einigem Probieren erreichte ich mit folgenden Typoscript-Zeilen den gewünschten Effekt.

#List Anzeige
plugin.tt_news.displayList.time_stdWrap.strftime = %H:%M Uhr
plugin.tt_news.displayList.time_stdWrap.wrap = – |
plugin.tt_news.displayList.time_stdWrap.if.value.field = datetime
plugin.tt_news.displayList.time_stdWrap.if.value.strftime = %H:%M
plugin.tt_news.displayList.time_stdWrap.if.equals = 00:00
plugin.tt_news.displayList.time_stdWrap.if.negate = 1
#Latest Anzeige
plugin.tt_news.displayLatest.time_stdWrap.strftime = %H:%M Uhr
plugin.tt_news.displayLatest.time_stdWrap.wrap = – |
plugin.tt_news.displayLatest.time_stdWrap.if.value.field = datetime
plugin.tt_news.displayLatest.time_stdWrap.if.value.strftime = %H:%M
plugin.tt_news.displayLatest.time_stdWrap.if.equals = 00:00
plugin.tt_news.displayLatest.time_stdWrap.if.negate = 1

Beteilige dich an der Unterhaltung

4 Kommentare

  1. Hallo,

    danke für den Beitrag zu dieser Problemstellung. Dies suche ich seit einiger Zeit, leider funktioniert bei mir dies nicht mit folgender Code und hoffe, man kann mir helfen:

    tt_news.tx_newscalendar {
    strftime = %H:%M Uhr
    wrap = |
    if {
    value.field = tx_newscalendar_calendardate
    value.strftime = %H:%M
    equals = 00:00
    negate = 1
    }
    }

    Grüße
    Suganja

  2. Um die Uhrzeit unabhängig abzuschalten habe ich jetzt diese Config verwendet:
    plugin.tt_news.displayLatest.time_stdWrap.if.negate = 1

    vermutlich ist es nicht die ideale Verwendung von if. Aber es funktioniert bei mir.

  3. Bei mir hat dieser TS-Schnippsel geholfen:

    plugin.tt_news {
    archiveTitleCObject {
    10.strftime = %m – %Y
    }
    getRelatedCObject {
    20.strftime = %d.%m.%Y
    }
    displaySingle {
    date_stdWrap.strftime= %d.%m.%y
    time_stdWrap.strftime=
    age_stdWrap.age = Minuten | Stunden | Tage | Jahre
    }
    displayLatest {
    date_stdWrap.strftime= %d.%m.%y
    time_stdWrap.strftime=
    }
    displayList {
    #date_stdWrap.strftime= %d. %B %Y %e
    date_stdWrap.strftime= %d.%m.%Y
    time_stdWrap.strftime= %d.%m.%y
    }
    }

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert