Tipps und Tricks Filter

Voller Monatsname in Deutsch bei Newsmodul

Im Forum kam die Frage auf, wie man den vollen Monatsname in Deutsch beim Newsmodul ausgeben lassen kann:
"Beim Newsmodul kann man im Datumsfeld angeben, in welchem Format es angezeigt werden soll. Normalerweise nutze ich da d.m.Y so dass z.B. 26.07.2008 angezeigt wird. Nun möchte ich aber bei einer Website den Monat voll ausschreiben lassen, damit es zu 26. Juli 2008 wird.

In Englisch wäre das kein Problem: d. F Y würde zu 26. July 2008."

Eine Lösung dazu war die folgende:
Ich habe dafür den Umweg über das Sprachenarray von Contao gemacht.
Also:

  1. Im Modul als Datum d.n.Y eingeben. (Dadurch wird der Monat ohne führende Null angegeben - 12.4.2008)
  2. Im Template an der Stelle, wo das Datum ausgegeben werden soll dann folgendes:
<?php 
preg_match('/([0-9]{2}).([0-9]{1,2}).([0-9]{4})/',$this->date,$date);
echo $date[1] . ". " . $GLOBALS['TL_LANG']['MONTHS'][$date[2]-1] . " " . $date[3];
?>

ergibt: 05. Mai 2026

Hat man kein Template zur Auswahl, kann man eine PHP Datei im Verzeichnis /templates packen (bzw. in das Template Verzeichnis des Themes) und bindet diese Datei dann per Insert-Tag ein: {{file::datei.php}}

Die Datei muss dafür gegenüber dem obigen Beispiel leicht abgewandelt werden:

<?php 
preg_match('/([0-9]{2}).([0-9]{1,2}).([0-9]{4})/',date('d.n.Y'),$date);
echo $date[1] . ". " . $GLOBALS['TL_LANG']['MONTHS'][$date[2]-1] . " " . $date[3];
?>