TYPOlight Extension Edit Date
Bei der Umstellung auf TYPOlight bin ich auf ein Problem gestoßen: Ich wollte meine alten Beiträge in das System übertragen. Möglichst ohne großen Aufwand. Doch schon die Kleinigkeit Erstellungsdatum war so im Backend nicht vorgesehen. Es gab keine Möglichkeit, ein Datum festzulegen geschweige denn auszugeben. Ein Notbehelf musste her.
Ich wollte die Möglichkeit haben, bei Erstellung eines Artikels auch das entsprechende Datum einzugeben. Zusätzlich und der Vollständigkeit halber auch das Bearbeitungsdatum. Letzteres wird standardmäßig in der Datenbank gespeichert. Also musste ein neues Feld zur Bearbeitung im Backend her. Für das Erstellungsdatum brauchte es noch zusätzlich ein Feld in der DB.
Für die Ausgabe wurden mittels Hook zwei InsertTags erstellt. Das Problem war – wie schon bei den Auto News – die Ausgabe. Der InsertTag liest die Werte für den aufgerufenen Artikel anhand der eindeutigen ID aus der Datenbank aus. Werden nun aber mehrere Artikel auf einer Seite angezeigt (z. B. globale Artikelliste) passt die ID logischerweise nicht zu den einzelnen Artikeln. Für diesen Fall, kann man im Template (oder da, wo die Ausgabe aufgerufen wird) die ID an den InsertTag übergeben. Getrennt wird das ganze mit dem PHP bekannten Paamayim Nekudotayim (Doppel-Doppelpunkt). Außerdem kann das Format wie bei der PHP-Funktion date() übergeben werden. Kommen beide Parameter (ID und Format) zum Einsatz, werden sie mit dem kaufmännischen Und (&) gesplittet.
Ein Beispiel: Für den Artikel mit der ID 7 sollen Tag, Monat und Jahr der Erstellung ausgegeben werden:
{article_update::id=7&format=d.m.Y}
Für das Bearbeitungsdatum wäre das der InsertTag {article_update}. Die möglichen Parameter sind die selben.
Die Erweiterung ist auch mit den Auto News kompatibel. D.h. sind beide Extensions installiert, werden die Nachrichten mit dem eingegebenen Datum veröffentlicht. Das macht es einfach, ein vorhandenen Blog zu “importieren” und auch das Datum beizubehalten, ohne in der Datenbank selbst herumpfuschen zu müssen.
Die Extension ist ebenfalls im Repository erhältlich oder kann über das TYPOlight-/Contao-Backend installiert werden.

