Skip to content

Twig Functions

CrispyCMS erweitert Twig um eine Reihe von benutzerdefinierten Funktionen,
die in Layouts, Seiten-Templates und Komponenten direkt genutzt werden können.
Twig-Funktionen werden wie normale PHP-Funktionen innerhalb der Twig-Syntax aufgerufen:

{{ functionName(parameter1, parameter2, ...) }}

Verfügbare Funktionen

Funktion Parameter Rückgabewert Beschreibung
microtime() float|string Gibt den aktuellen Unix-Timestamp mit Mikrosekunden zurück.
includeResource(path) path (string) string Bindet eine Ressource (z. B. CSS oder JS) aus dem Theme ein.
generateLink(route, params) route (string), params (array, optional) string Erzeugt einen vollständigen Link basierend auf einer Route und optionalen Parametern.
generatePlaceholder(size = '150x150', text = true, backgroundColor = null, textColor = null) size (string), text (string|true), backgroundColor (string|null), textColor (string|null) string Erzeugt ein Platzhalter-Bild mit optionalem Text und Farben.
date(format, timestamp = time()) format (string), timestamp (int, optional) string Formatiert ein Datum/Timestamp.
in_array_any(needles, haystack) needles (array), haystack (array) bool Prüft, ob mindestens ein Wert aus needles im Array haystack vorkommt.
getCSRF() string Gibt den aktuellen CSRF-Token zurück.
refreshCSRF() string Generiert einen neuen CSRF-Token.
validateCSRF(token) token (string) bool Prüft, ob ein übergebener CSRF-Token gültig ist.
strftime(format, timestamp = time()) format (string), timestamp (int, optional) string Formatiert einen Zeitstempel (PHP strftime).
strtotime(timeString) timeString (string) int Wandelt einen Zeitstring in einen Unix-Timestamp um.
time() int Gibt den aktuellen Unix-Timestamp zurück.
parseTime(timeString) timeString (string) DateTime Wandelt einen Zeitstring in ein Carbon-DateTime-Objekt um.
generateRoute(routeName, params) routeName (string), params (array, optional) string Erzeugt eine URL anhand des Routennamens und optionaler Parameter.
arrayToList(items) items (array) string Wandelt ein Array in eine formatierte Liste um.
getUserById(userId) userId (int) object Gibt einen Benutzer anhand seiner ID zurück.
getEditionFromValue(value) value (string) object|null Gibt die passende Lizenz-Edition zu einem Wert zurück.

Beispiele

{{ microtime() }}
{{ includeResource("css/style.css") }}
{{ generateLink("home") }}
{{ generatePlaceholder("300x200", "Demo Text") }}
{{ date("Y-m-d") }}
{{ in_array_any(["admin", "editor"], user.roles) }}
{{ getCSRF() }}
{{ refreshCSRF() }}
{{ validateCSRF(form.token) }}
{{ strftime("%d.%m.%Y") }}
{{ strtotime("2025-08-12") }}
{{ time() }}
{{ parseTime("2025-08-12 15:30") }}
{{ generateRoute("dashboard", { id: 42 }) }}
{{ arrayToList(["Apfel", "Banane", "Kirsche"]) }}
{{ getUserById(5).username }}
{{ getEditionFromValue("pro") }}