Vorlagen-API

Die SLAED CMS Vorlagen-API bietet Funktionen für das Rendern von Seiten, die Verwaltung von Designs und die Handhabung von Benutzeroberflächenelementen.

Grundlegende Vorlagenfunktionen

Kernvorlagenfunktionen für die Designverwaltung:

// Design-Dateien einbinden
function setThemeInclude() {
    global $theme;
    $theme = get_theme();
    include_once('templates/'.$theme.'/index.php');
    include_once('core/template.php');
}

// Aktuelles Design abrufen
$current_theme = get_theme();

// Bild in Design-Verzeichnissen finden
function img_find($image_name, $default = '') {
    $paths = array(
        'uploads/'.$image_name,
        'templates/'.get_theme().'/images/'.$image_name,
        'templates/default/images/'.$image_name
    );
    
    foreach ($paths as $path) {
        if (file_exists($path)) {
            return $path;
        }
    }
    return $default;
}

Vorlagen-Rendering

Funktionen für das Rendern von Vorlagenelementen:

// Grundlegendes Vorlagen-Rendering
function setTemplateBasic($type, $values = array()) {
    // $type: 'title', 'content', 'pagination', etc.
    // $values: Array von Platzhalter => Wert Paaren
}

// Seitentitel
$content = setTemplateBasic('title', array('{%title%}' => 'Seitentitel'));

// Inhaltsblock
$content = setTemplateBasic('content', array(
    '{%title%}' => $title,
    '{%content%}' => $content,
    '{%author%}' => $author,
    '{%date%}' => format_time($timestamp)
));

Funktionen für die Handhabung von Navigationselementen:

// Seitenzahlen generieren
function setPageNumbers($current, $module, $total_items, $total_pages, $per_page, $param = '', $max_links = 8, $anchor = '') {
    // Gibt HTML für Paginierung zurück
}

// Beispielverwendung
$page = getVar('get', 'page', 'num', 1);
$per_page = 10;
$total_items = 150;
$total_pages = ceil($total_items / $per_page);

$pagination = setPageNumbers($page, 'news', $total_items, $total_pages, $per_page);
echo $pagination;

// Untere Navigation (zurück, Start, nach oben)
echo setNaviLower('modul_name');

Nachrichten und Warnungen

Funktionen für die Anzeige von Systemnachrichten:

// Warnungs-/Nachrichtenvorlagen
function setTemplateWarning($type, $values = array()) {
    // $type: 'info', 'warn', 'error', 'success'
    // $values: Nachrichtenparameter
}

// Erfolgsmeldung
echo setTemplateWarning('success', array(
    'text' => 'Vorgang erfolgreich abgeschlossen',
    'url' => 'index.php?name=module',
    'time' => '3'
));

// Fehlermeldung
echo setTemplateWarning('error', array(
    'text' => 'Ein Fehler ist aufgetreten',
    'url' => 'javascript:history.back()',
    'time' => '5'
));

Seitenstruktur

Funktionen für die Verwaltung der Seitenstruktur:

// HTML-Ausgabe starten (Header, Navigation)
head();

// Ihr Inhalt hier
echo '

Modulinhalt

'; echo '

Ihr Modulinhalt...

'; // HTML-Ausgabe beenden (Footer) foot();

Die Vorlagen-API sorgt für konsistentes Rendering in allen Modulen und Designs und bietet gleichzeitig Flexibilität für Anpassungen.