Module erstellen

Module sind das Herzstück von WBCE. Sie bestimmen was ein Abschnitt auf einer Seite anzeigt — von einfachem Text bis zu komplexen News-Systemen. Hier lernst du wie du dein eigenes Modul baust.


Was ist ein Modul?

Ein Modul ist ein PHP-Paket das WBCE erweitert. Es besteht aus mehreren Dateien die zusammen eine Funktion bereitstellen — im Frontend für Besucher und im Backend für Redakteure.


Grundstruktur eines Moduls

Jedes Modul hat mindestens diese Dateien:

mein_modul/
├── info.php        ← Name, Version, Beschreibung
├── install.php     ← Datenbank anlegen
├── uninstall.php   ← Datenbank löschen
├── upgrade.php     ← Updates migrieren
├── add.php         ← Standardwerte beim Anlegen
├── view.php        ← Frontend-Ausgabe
├── modify.php      ← Backend-Formular
├── save.php        ← Eingaben speichern
└── index.php       ← Directory-Schutz

info.php — das Wichtigste zuerst

<?php
defined('WB_PATH') or die("This file cannot be accessed directly!");

$module_directory   = 'mein_modul';
$module_name        = 'Mein erstes Modul';
$module_function    = 'page';
$module_version     = '1.0.0';
$module_platform    = '1.6';
$module_author      = 'Dein Name';
$module_license     = 'GNU General Public License';
$module_description = 'Beschreibung was das Modul macht.';

view.php — die Frontend-Ausgabe

Hier gibst du aus was Besucher sehen:

<?php
defined('WB_PATH') or die("This file cannot be accessed directly!");

$sid  = (int)$section_id;
$res  = $database->query("SELECT * FROM " . TABLE_PREFIX . "mod_mein_modul WHERE section_id=$sid");
$data = $res->fetchRow();

echo '<div class="mein-modul">';
echo htmlspecialchars($data['inhalt'] ?? '');
echo '</div>';

Sicherheit — die wichtigsten Regeln

// Guard in jeder Datei
defined('WB_PATH') or die("This file cannot be accessed directly!");

// Eingaben escapen
$text = $database->escapeString($_POST['text'] ?? '');

// FTAN-Schutz in Formularen
echo $admin->getFTAN();

// Nach Speichern immer weiterleiten
header('Location: ' . ADMIN_URL . '/pages/modify.php?page_id=' . $page_id);
exit;

ZIP erstellen und installieren

Ein Modul wird als ZIP-Datei installiert. Wichtig:

  • Die Dateien müssen direkt im ZIP-Root liegen — nicht in einem Unterordner
  • Version in info.php vor dem ZIP-Bauen erhöhen
mein_modul_1.0.0.zip
├── info.php
├── install.php
├── view.php
└── ...

Vibe Coding mit KI

Du musst nicht alles auswendig wissen — beschreibe der KI was du brauchst:

"Erstelle ein WBCE Modul das einen Text speichert
und ihn im Frontend anzeigt."

Die KI hilft dir Schritt für Schritt. Das nennt sich Vibe Coding — Entwicklung im Dialog.


Nächster Schritt

Nächster Schritt: Vibe Coding — mit KI Module entwickeln