Template-Hooks
Template-Hooks sind PHP-Funktionen die du in deiner index.php verwendest um WBCE-Inhalte einzubinden. Hier findest du alle wichtigen Hooks auf einen Blick.
Inhalts-Hooks
<?php page_content(1); ?>
// Gibt den Inhalt von Block 1 aus
// Zahl = Block-ID (frei wählbar, 1-99)
<?php page_content(2); ?>
// Block 2 — z.B. für Sidebar
Seiten-Informationen
<?php page_title(); ?>
// Titel der aktuellen Seite
<?php page_description(); ?>
// Meta-Beschreibung der Seite
<?php page_keywords(); ?>
// Meta-Keywords der Seite
<?php page_header(); ?>
// Website-Kopfzeile (aus Grundeinstellungen)
<?php page_footer(); ?>
// Website-Fußzeile (aus Grundeinstellungen)
Navigation
<?php show_menu2(); ?>
// Hauptnavigation ausgeben (alle Optionen möglich)
<?php show_menu2(1, SM2_ROOT); ?>
// Menü 1, ab Root-Ebene
<?php show_breadcrumbs(' > '); ?>
// Breadcrumb-Navigation mit Trennzeichen
Modul-Dateien einbinden
<?php register_frontend_modfiles('css'); ?>
// CSS-Dateien aller aktiven Module einbinden
// → im <head> platzieren
<?php register_frontend_modfiles('js'); ?>
// JS-Dateien aller aktiven Module einbinden
// → vor </body> platzieren
Konstanten im Template
<?php echo WEBSITE_TITLE; ?>
// Name der Website (aus Grundeinstellungen)
<?php echo TEMPLATE_DIR; ?>
// URL zum Template-Verzeichnis
// z.B. https://example.com/templates/mein_template
<?php echo WB_URL; ?>
// Basis-URL der WBCE-Installation
<?php echo ADMIN_URL; ?>
// URL zum Backend
Frontend-Check
<?php if (defined('WB_FRONTEND')): ?>
// Wird nur im Frontend ausgeführt
<?php endif; ?>
Beispiel: Vollständige index.php
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title><?php page_title(); ?> - <?php echo WEBSITE_TITLE; ?></title>
<meta name="description" content="<?php page_description(); ?>">
<link rel="stylesheet" href="<?php echo TEMPLATE_DIR; ?>/css/style.css">
<?php register_frontend_modfiles('css'); ?>
</head>
<body>
<header>
<a href="<?php echo WB_URL; ?>"><?php echo WEBSITE_TITLE; ?></a>
<nav><?php show_menu2(); ?></nav>
</header>
<div class="breadcrumb">
<?php show_breadcrumbs(' › '); ?>
</div>
<main>
<?php page_content(1); ?>
</main>
<aside>
<?php page_content(2); ?>
</aside>
<footer>
<?php page_footer(); ?>
</footer>
<?php register_frontend_modfiles('js'); ?>
</body>
</html>
Nächster Schritt: CSS und JavaScript — Styling und Interaktivität