Variablen
In CrispyCMS steht Ihnen eine Vielzahl an vordefinierten Variablen zur Verfügung, um dynamische Inhalte in Layouts, Seiten-Templates und Komponenten zu rendern. Der Zugriff erfolgt über die Standard-Twig-Syntax:
{{ variable }}
Globale Konfiguration & Umgebung
Diese Variablen ermöglichen den Zugriff auf Systemeinstellungen und Umgebungsparameter der Instanz.
| Variable | Typ | Beschreibung |
|---|---|---|
config | Array | Zugriff auf den Key-Value-Storage (z. B. Admin-Einstellungen). |
locale | String | Die aktuelle Sprache als ISO-Code (z. B. de, en). |
languages | Array | Liste aller im System installierten Sprachen. |
URL | String | Die vollständige aktuelle URL inklusive Protokoll. |
CLUSTER | String | Hostname des ausführenden Servers (gethostname()). |
REQUEST_ID | String | Eindeutige Identifikationsnummer für die aktuelle Anfrage. |
ENVIRONMENT | Object | Das crisp\core\Environment Objekt der Instanz. |
Detail: config (Array)
Der Key-Value-Storage dient als Schnittstelle zwischen Backend und Frontend. Er speichert sowohl Systemdaten als auch persistente Daten von Plugins.
Beispiel: Zugriff auf den Seitennamen
Twig
{{ config.CMSControl_SiteName }}
{# Ausgabe: CrispyCMS #}
PHP (Backend-Referenz)
use crisp\api\Config;
echo Config::get('CMSControl_SiteName');
HTTP-Parameter & Client-Daten
Diese Variablen spiegeln die nativen PHP-Superglobals wider und bieten Informationen über den Client-Request.
| Variable | Beschreibung | Entspricht PHP |
|---|---|---|
GET | Array der URL-Parameter. | $_GET |
POST | Array der übermittelten Formulardaten. | $_POST |
SERVER | Informationen über Server- und Ausführungsumgebung. | $_SERVER |
COOKIE | Array der übertragenen HTTP-Cookies. | $_COOKIE |
ENV | Zugriff auf Umgebungsvariablen. | $_ENV |
GLOBALS | Zugriff auf alle globalen Variablen. | $GLOBALS |
isMobile | true, wenn ein mobiles Endgerät erkannt wurde. | (User-Agent-Detection) |
Modelle & Controller
Direkter Zugriff auf die Kern-Logik und Datenstrukturen von CrispyCMS.
Page (JSON)
Enthält alle Daten der aktuell gerenderten Seite als JSON-Array.
LicenseUsageController (Object)
Global verfügbare Instanz zur Abfrage der aktuellen Lizenznutzung.
FeatureController (Object)
Global verfügbare Instanz zur Verwaltung und Prüfung von Features.
LICENSE (Object)
Stellt das aktuelle Lizenzmodell (Crispy License Model) global bereit.
Plugin-Erweiterungen
Das Variablensystem ist modular aufgebaut. Plugins können eigene Variablen registrieren, die nahtlos in die Twig-Umgebung integriert werden.
Beispiel:
Ein Shop-Plugin stellt die Variable shopCartCount bereit:
<div class="cart-status">
Artikel im Warenkorb: {{ shopCartCount }}
</div>