Ergebnis 1 bis 7 von 7

Thema: Event-liste mit End-Date (verkürzte Darstellung), und abgekürte Wochentagsnamen

  1. #1
    Contao-Nutzer
    Registriert seit
    19.06.2009.
    Beiträge
    80

    Standard Event-liste mit End-Date (verkürzte Darstellung), und abgekürte Wochentagsnamen

    Hallo,

    Die verkürzte Darstellung des moduls 'Event list' gibt mehrtägige Events nur einmal aus. Ich möchte gern Anfangs- und, wenn mehrtägig, Enddatum anzeigen, aber weiss nicht so recht wie. Ich habe folgendes im template versucht, das klappt aber nicht, denn es zeigt mir im moment z.B. folgendes an: Friday 05 Jun 2015 - 1433545200

    PHP-Code:
    <?php if ($this->header): ?>
        <?php if ($this->firstDay): ?><?php echo $this->firstDay?>
        <?php endif; ?> 
        <?php echo $this->firstDate?><?php if ($this->endDate): ?>
            - 
        <?php if ($this->endDay): ?><?php echo $this->endDay?>
        <?php endif; ?> 
            <?php echo $this->endDate?>
        <?php endif; ?>
    <?php 
    endif; ?>

    Geren möchte ich auch den Namen des wochentages verkürzen, als 'Fri' anstelle 'Friday'. Wie würde ich das machen?

    Vielen Dank!

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

    Standard

    Die Zahl ist der timestamp und muss erst noch in ein lesbares datum konvertiert werden.
    z.B.
    PHP-Code:
    <?php echo $GLOBALS['TL_LANG']['DAYS_SHORT'][Date('w'$this->end)] . ", " Date($GLOBALS['TL_CONFIG']['dateFormat'], $this->end); ?>
    $this->end ist die timestamp variable und das Ergebnis sieht dann so aus:
    Code:
    So, 30.11.2014

  3. #3
    Contao-Nutzer
    Registriert seit
    19.06.2009.
    Beiträge
    80

    Standard

    Vielen Dank, magicsepp.

    Das klappt soweit. Nur benutzt der Code, die Formateinstellung von Settings, allerdings sollte bei mir das Datumsformat benutzt werden, das in der Seiteneinstellung eingegeben ist. Ich habe festgestellt, dass ich das mit Date('d M Y', $this->end) direkt im template angeben kann, aber wie müsste es aussehen, wenn ich hier auf die Seitenconfiguration verweisen will, so das das dann da geänder werden kann. Ich denke, dass TL_CONFIG ersetyt weden muss, aber womit?

    Weiterhin gibt das start datum noch immer die lange version des Wochentags aus: <?php echo $this->firstDay; ?>
    Ich habe versicht, das irgendwie zu manipulieren, indem ich 'w' da irgendwie reinbringe, aber erfolglos...

    Vielen Dank für weitere Hilfestellung.

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

    Standard

    Den versteh jetzt nicht:

    PHP-Code:
    echo $GLOBALS['TL_LANG']['DAYS_SHORT'][Date('w'$this->end)] 
    gibt den Wochentag aus, abhängig von der Sprache wird aus Freitag 'Fri' bzw 'Fr'
    und
    PHP-Code:
    $GLOBALS['TL_CONFIG']['dateFormat'
    steht für 'd.m.Y' wenn es in den Einstellungen so eingestellt ist default wäre m-d-Y
    wo klemmt es denn jetzt?

  5. #5
    Contao-Nutzer
    Registriert seit
    19.06.2009.
    Beiträge
    80

    Standard

    PHP-Code:
    $GLOBALS['TL_CONFIG']['dateFormat'
    Gibt die einstellungen wieder, die im Backend > Settings angegeben sind. Man kann aber das Datumsformat auch noch separat für die Frontend-Ausgabe einstellen: Site structure > Edit page > Global settings.

    Das erlaubt die Ausgabe von Monatsnamen im Frontend, wogegen (wenn ich es richtig verstehe) im Backend z.B. zur Datumseingabe nur ein numerisches Dautumsformat möglich ist.

    Ich möchte also, das das template das Datumsformat aus der Site stucture benutzt.

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

    Standard

    Meinst Du mit Monatsnamen den Volltext? Das ist keine gute Idee, (dazu hatten wir schon eine Diskussion) weil damit muss dann auch die Eingabe entsprechend genauso sein was meist in einem Disaster endet. Aber letztendlich kannst auch die Variable dafür hernehemen.

  7. #7
    Contao-Nutzer
    Registriert seit
    19.06.2009.
    Beiträge
    80

    Standard

    Richtig: Frontendausgabe sollte d M Y sein – ist in der Website root page so angegeben, und funktioniert auch prima mit dem Rest der Vorlage, d.h.

    PHP-Code:
    <?php echo $this->firstDate?>
    Gibt z.B. 25 Apr 2015 aus.

    Das das als Eingabeformat nicht geht habe ich mitbekommen, da scheinen nur zahlen-basierte Formate zu gehen, aber warum Montate im Frontend nicht als Monatsnamen umgewandelt werden könnten ist mir nicht so klar. (Aber ich habe natürlich von vielem nicht so die Ahnung. Darum frage ich ja hier). Nur wie gesagt, $this->firstDate geht gut.

Aktive Benutzer

Aktive Benutzer

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

Berechtigungen

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