Start

Grundlagen, Einbindungen und Hilfsfunktionen des WACMS Frontends — Konstanten, Bild-/Video-Helfer und Datum-Funktionen.

Wird bei der Installation im Verzeichnis _root/ angelegt. Lädt Credentials aus _root/.env.

// _root/.env
DB_HOST="localhost"
DB_DATABASE="meine_db"
DB_USERNAME="db_user"
DB_PASSWORD="geheim"
WEBADMIN_KEY="XXXX-XXXX-XXXX-XXXX"
SITE_LANGUAGE="de"
SITE_ID="1"
VariableBeschreibung
DB_*Datenbank-Verbindung (Host, User, Passwort, Name)
WEBADMIN_KEYLizenzschlüssel
SITE_LANGUAGEStandardsprache (de, en, fr, it)
SITE_IDWebsite-ID in tbl_grunddaten_webseiten

Muss als erstes auf jeder Frontend-Seite eingebunden werden. Startet Session, lädt DB-Verbindung, Cache und Maintenance-Check.

<?php include("functions/functions.php"); ?>

Gibt Title-Tag, Meta-Description, OG-Tags etc. aus. Muss im <head> stehen.

<?php metaOutput(); ?>

Gibt alle Favicon-Link-Tags aus. Muss im <head> stehen.

<?php faviconOutput(); ?>

CSS und Scripts aktivierter Dienste (Google Tag Manager, Analytics, etc.). Muss im <head> stehen.

<?php engineHeadOutput(); ?>

Scripts aktivierter Dienste die direkt nach <body> stehen müssen.

<?php engineBodyOutput(); ?>

Scripts aktivierter Dienste die am Ende der Seite stehen müssen (vor </body>).

<?php engineFooterOutput(); ?>
Konstante / FunktionBeschreibungAusgabe (Live)
DOMAIN Aktuelle Domain
v51.beta.wacms.org
setting("2") URL der Webseite
https://v51.beta.wacms.org
SITE_ID Aktuelle Website-ID
1
setting("1") Seitenname
WEBadmin 5.1 - BETA (Entwicklung)
LANGUAGE Aktuelle Sprache (de, en, …)
de
setting("3") Meta-Beschreibung
setting("4") Meta-Keywords
Test,Demo Seite
setting("5") Mail-Absendername
Test Sendgrid
setting("6") Mail-Absenderadresse
infoservice@onenation.ch
setting("9") Dateimanager-Pfad
setting("21") Bilder-Pfad
Daten
setting("22") Videos-Pfad
_bilder
echo DOMAIN; // z.B. example.com
echo SITE_ID; // z.B. 1
echo LANGUAGE; // z.B. de
echo setting("1"); // Seitenname
echo setting("2"); // URL

Gibt einen Textbaustein aus tbl_cms_output zurück. Mehrsprachig — gibt den Wert in der aktuellen LANGUAGE zurück.

// Vollständiger Textinhalt
echo getOutput("42");

// Kurz-Variante (Extension)
echo getOutputExtension("42");
Montag

Hilfsfunktionen für übersetzte Wochentag- und Monatsnamen in der aktuellen LANGUAGE. Parameter: Unix-Timestamp.

$ts = time(); // oder ein DB-Timestamp

echo getDateWeekday($ts); // z.B. "Montag"
echo getDateWeekdayShort($ts); // z.B. "Mo"
echo getDateMonth($ts); // z.B. "Januar"
echo getDateMonthShort($ts); // z.B. "Jan"
Sonntag / So
Mai / Mai

Gibt Bildpfad zurück. Findet Bilder nach exaktem Namen oder Prefix. Gibt leeren String zurück wenn kein Bild gefunden.

// Bild exakt mit Dateiname "logo" suchen
echo getSingleImage("_bilder/", "logo", "image", "exactly");
echo getSingleImage("_bilder/", "logo", "thumbnail", "exactly");
echo getSingleImage("_bilder/", "logo", "small", "exactly");
echo getSingleImage("_bilder/", "logo", "onlyFile", "exactly");

// Bild nach Prefix "logo" suchen (z.B. logo_2024.jpg)
echo getSingleImage("_bilder/", "logo", "image", "like");
ParameterBeschreibung
$ordnerPfad zum Bildordner (relativ zum Root)
$nameDateiname (ohne Endung) oder Prefix
$formatimage = Vollbild mit Pfad · thumbnail = Thumbnail · small = Kleines Thumbnail · onlyFile = nur Dateiname
$modusexactly = genauer Name · like = Name als Prefix

Sucht im angegebenen Ordner nach einem Bild und gibt den vollen Pfad inkl. Dateiname zurück.

echo searchImage("_bilder/_info/", "45", "exactly");

Hilfsfunktionen für YouTube- und Vimeo-URLs. Extrahieren Typ und ID aus einer URL und erzeugen Embed-Code.

$url = "https://www.youtube.com/watch?v=dQw4w9WgXcQ";

$type = videoTyp($url); // "youtube"
$id = videoId($url); // "dQw4w9WgXcQ"
$embed = videoEmbed($type, $id); // <iframe ...>
$clean = videoNewUrl($url); // Kanonische URL
FunktionRückgabe
videoTyp($url)youtube oder vimeo
videoId($url)Video-ID (String)
videoEmbed($type, $id)Fertiger <iframe>-HTML-String
videoNewUrl($url)Kanonische Video-URL