WBCE CMS – Way Better Content Editing.
You are not logged in.
Das nächste Update bringt dann:
- Bessere Logik bei Header und Navigation
- CodeMirror CSS-Editor
- Spectrum-Colorpicker
- Frontend-Bugs Navigation behoben
Offline
Hier der aktuelle Stand.
## TemplateBuilder – Änderungshistorie (Neue Funktionen & Verbesserungen)
### v1.6.5
– Burger-Menü Umstrukturierung
- Burger-Button Farbe und Verhalten aus „Seiten-Kopf" in „Navigation" verschoben
- Neue Option „Animation" im Burger-Menü (Keine / Fade / Slide-down)
- Zentriert/Nav-Leiste: Burger-Menü als Fixed-Overlay (wie Standard/Gespiegelt)
- Burger-Button X-Animation beim Öffnen für alle Layouts und Nav-Styles
- Burger-Menü Animationen (Fade, Slide-down) vollständig implementiert
- Burger-Button X-Animation (Striche → X) für Classic und Underline Nav-Style
- Neue Option „Menü-Typ": Dropdown (volle Breite) / Panel links / Panel rechts
- Panel-Breite als eigene Option im Nav-Style
- `nav.css` abgeschafft – alles in einer `style.css`
- Nav-Styles (Classic, Underline) auf Desktop-only reduziert
- Burger-Menü vollständig zentral gesteuert, kein `!important` mehr
- Hintergrundfarbe der Nav-Bar bei Zentriert/Nav-Leiste ohne Sticky korrekt dargestellt
- Neues Backend-System: `backend/FieldRenderer.php` und `backend/fields.php`
- Felder als deklarative PHP-Arrays definiert
- Automatische `show_if`-Sichtbarkeitslogik (serverseitig)
- Seiten-Kopf-Tab, Navigation-Burger-Menü, Farb-Sektionen auf neues System umgestellt
- `tool.php` von 2956 auf ~2000 Zeilen reduziert (-30%)
- Overlay Nav-Style aus Modul und Datenbank entfernt
- Feld „Burger ab Breite" aus Nav-Style-Options in Burger-Menü-Abschnitt verschoben
- Bei Menü-Typ „Nur Burger" Beschriftung zu „Mobil-Menü ab Breite"
- Migration bestehender Werte automatisch per upgrade.php
- Sticky-Feld aufgeteilt: Standard/Gespiegelt ohne, Zentriert/Nav-Leiste mit „Nur Nav-Leiste"-Option
- Versteckte Felder werden beim Absenden automatisch deaktiviert
- Neue WYSIWYG-Section im Header (nur bei Layout Nav-Leiste)
- Eigene Hintergrundfarbe, Wrapper-Breite
- Automatische Section-Anlage über SectionManager
- Bearbeiten-Link direkt im Backend
- Section innerhalb `<header>` für korrekte Höhenberechnung und Sticky-Verhalten
- Neue Option „Textfarbe Überschriften" im Header-Abschnitt
- Alle Abschnitte standardmäßig zugeklappt
- Layout-Anpassung: Label 200px, Schriftgröße 15px, Felder 200px
- Tab „Allgemein": Label 150px, Felder 400px
- Zweispaltige Darstellung für Farb- und Button-Sektionen
- Layout-Namen im Seiten-Kopf-Tab gekürzt, Beschreibungen als Hint
- Nav-Style-Hint entfernt
- Neue Option „Schatten" (An/Aus) für Header und Nav-Bar
Offline
florian
Sehr gut, danke.
Einzige Anmerkung:
Die Nav-Einstellung "Dropdown auslösen bei > Klick" funktioniert nicht so richtig zuverlässig im Hamburger-Menü und wenn es mehr als eine Unterebene gibt.
Nicht ärgern. Nur wundern.
Offline
Hm ...
und in der "uninstall.php" fehlt die Tabelle "mod_templatebuilder_nav_styles" - die bleibt //liegen//.
Gibt es einen Grund warum bei der "Beispielseite"
a) template-sections.php.php (2 x. php im pfad!) generiert wird ("link" ohne ".php" Endung in die DB!)
b) nicht das "aktuelle" Template gleich eingetragen wird?
c) Sichtbarkeit "none" ist ehr //suboptimal - besser wäre da "hidden" oder "registered"
[edit]
d) Die Seitensprache auf "DE" festgeklopft wird und nicht die "default language" genommen wird?
[/edit]
Gruß
Kant
Last edited by kant (31.05.2026 18:58:21)
Sapere aude!
Offline
Vielen Dank für das Feedback.
@florian:
Der "Klick" bei Dropdown ist noch nicht zu Ende gedacht. Das würde ja nur Sinn machen, wenn der anzuklickende Menüpunkt ein Menülink ist.
@Kant:
Was meinst Du mit Beispielseite? Komme gerade nicht klar.
Gibt es einen Grund warum bei der "Beispielseite"
a) template-sections.php.php (2 x. php im pfad!) generiert wird ("link" ohne ".php" Endung in die DB!)
b) nicht das "aktuelle" Template gleich eingetragen wird?
c) Sichtbarkeit "none" ist ehr //suboptimal - besser wäre da "hidden" oder "registered"
d) Die Seitensprache auf "DE" festgeklopft wird und nicht die "default language" genommen wird?
Offline
"Generieren und Installieren" legt im Seitenbaum eine Seite "template-sections" an ... so wie ich es //verstanden// habe als "beispielseite"/Spielwiese? ... Waum sollte das Tool sonst eine neue Seite im Seitenbaum generieren? ...
Passiert im "SectionManager" -> "build_page" (method)
Gruß
Kant
Last edited by kant (01.06.2026 10:11:45)
Sapere aude!
Offline
Hi Kant!
Ah, verstanden. Der Inhalt dieser Sections wird benutzt um z.B. den Footer zu befüllen.
Ich schaue mir die Punkte an.
Ich weiß, das die Sache mit den Sections noch nicht zu ende gedacht ist. Es sind auch noch Bugs vorhanden.
Wie verhält sich das wenn das Template in einer anderen Installation genutzt werden soll? Dann müsste dort der TemplateBuilder vorhanden sein. Oder man müsste die "SectionPicker" im Template manuell anpassen.
Offline
PHP 8.5 hat was zu nörgeln:
2026-06-03T12:49:25+00:00 [Deprecated] /modules/templatebuilder/tool.php:[274] from /modules/templatebuilder/backend/FieldRenderer.php:[91] TbFieldRenderer->evaluate_show_if "Using null as an array offset is deprecated, use an empty string instead"
Nicht ärgern. Nur wundern.
Offline
Hallo Zusammen,
hier der letzte Stand vom TemplateBuilder.
# TemplateBuilder – Neue Funktionen & Verbesserungen
## Portabler Template-Transport (.tbz)
Templates lassen sich jetzt als `.tbz`-Paket exportieren und in anderen
WBCE-Installationen importieren. Das Paket enthält neben den Template-Dateien
auch alle Einstellungen und die Seiteninhalte der zugewiesenen Sections
(Footer, Header, Utility-Bar). Beim Import werden die Sections in der
Ziel-Installation automatisch neu angelegt und mit den mitgelieferten Inhalten
befüllt – keine manuellen Nacharbeiten nötig.
Das Format ist offen gestaltet und für spätere Erweiterungen vorbereitet,
zum Beispiel für den Import von WordPress-Themes.
Daneben steht weiterhin der klassische ZIP-Export zur Verfügung, der das
fertig generierte WBCE-Template ohne Einstellungen und Inhalte exportiert.
---
## Installationsweite Section-Verwaltung
Bisher wurde bei jedem neuen oder regenerierten Template eine neue Section
für Footer, Header-Section und Utility-Bar angelegt. Das führte zu doppelten
Einträgen und verwaisten Sections.
Ab sofort verwaltet der TemplateBuilder die Sections installationsweit:
Jeder Inhaltsbereich (Footer Zeile 1 Spalte 1, Utility-Bar usw.) ist in einer
Installation genau einmal vorhanden. Alle Templates greifen auf dieselben
Sections zu – Änderungen am Footer-Inhalt wirken sofort, ohne dass das
Template neu generiert werden muss.
Neue Slots werden bei Bedarf durch Modul-Updates hinzugefügt; die
Datenbankstruktur bleibt dabei unverändert.
---
## Hintergrundgrafiken
Für alle wesentlichen Layoutbereiche lässt sich jetzt ein Hintergrundbild
festlegen:
- **Body** (gesamte Seite)
- **Header**
- **Nav-Bar**
- **Utility-Bar**
- **Footer** – je Zeile (1–3) einzeln
### Drei Darstellungsmodi
**Nur Farbe** – Standard, keine Änderung am bisherigen Verhalten.
**Nur Bild** – Das hochgeladene Bild füllt den Bereich vollständig.
Konfigurierbar: Größe (Cover/Contain/Auto), Position (9 Varianten),
Wiederholung und Befestigung (Scroll oder Fixed/Parallax-Effekt).
**Farbe + Bild** – Das Bild wird mit einer farbigen, teiltransparenten
Schicht überlagert. Overlay-Farbe und Deckkraft (10–80 %) sind frei wählbar.
Ideal für Lesbarkeit von Text auf Fotos.
### Medien-Verwaltung
Bilder werden über den neuen Tab **„Medien"** hochgeladen. Dort wird beim
Upload direkt der Ziel-Bereich gewählt (z. B. Header oder Footer Zeile 1).
Die Datei wird automatisch mit einem eindeutigen Namen gespeichert und dem
gewählten Bereich zugewiesen. Vorhandene Bilder werden als Vorschau-Galerie
angezeigt und können einzeln gelöscht werden.
---
## Verbesserungen im Backend
- **Footer-Zeilen-Farben** werden jetzt als CSS-Variablen verwaltet statt
als Inline-Styles. Das vereinfacht spätere Erweiterungen wie Farbschemata.
- **Section-IDs** der installationsweiten Slots werden in den entsprechenden
Einstellungsfeldern des Editors angezeigt – zur schnellen Orientierung ohne
Datenbankabfrage.
- **Felder werden kontextabhängig ein- und ausgeblendet**: Bei Hintergrund-Typ
„Nur Farbe" werden Bild-Optionen und Upload ausgeblendet; Overlay-Felder
erscheinen nur bei „Farbe + Bild".
---
## Technische Verbesserungen
- Spracheinstellung beim Anlegen der Template-Sections-Seite wird jetzt aus
der WBCE-Standardsprache gelesen statt hardcodiert zu sein.
- Section-Inhalt (Footer, Header-Section, Utility-Bar) wird zuverlässig über
einen direkten Datenbankzugriff ausgegeben.
- Das Upgrade-Verfahren stellt sicher, dass alle Moduldateien beim Update
zuverlässig auf den neuen Stand gebracht werden.
Ich bitte um umfangreiche Tests, Feedback, Wünsche und Anregungen.
Wünsche ein hoffentlich langes Wochende
VG
Rudi
Offline
PHP 8.5 hat was zu nörgeln:
2026-06-03T12:49:25+00:00 [Deprecated] /modules/templatebuilder/tool.php:[274] from /modules/templatebuilder/backend/FieldRenderer.php:[91] TbFieldRenderer->evaluate_show_if "Using null as an array offset is deprecated, use an empty string instead"
Bei der aktuellen Version 1.6.6 habe ich mit PHP 8.5.7 keine Fehler.
Offline
Anbei der letzte Stand vom TemplateBuilder.
### 1.7.0 — Theme-System: Grundimplementierung
**Neue Funktionen**
- **Theme-System:** Beliebig viele Farbschemata (Themes) pro Template anlegen, bearbeiten und löschen
- **Theme-Tab im Backend:** Eigener Tab „? Themes" neben dem Medien-Tab im Editor
- **Aus Template ableitn:** Alle aktuellen Farbwerte des Templates als neues Theme-Startpunkt speichern
- **Vollständige Farbabdeckung:** ~87 Farbwerte in 7 Gruppen (Grundfarben, Header/Navbar/Utility, Navigation & Dropdown, Burger-Menü, Content-Elemente, Footer-Zeilen, Footer-Elemente)
- **OS-Präferenz:** Theme kann als `os_auto` markiert werden – aktiviert bei `prefers-color-scheme: dark` automatisch
- **Switch-Button im Frontend:** Optionaler Button (fest unten rechts/links oder ausgeblendet); Auswahl in `localStorage`
- **Exportierbar:** Themes reisen im `.tbz`-Export mit; nach Import beim nächsten `generate()` in `style.css`
- **Kein Server nötig:** Generierter Template-Output vollständig statisch – TB muss auf Ziel-Installation nicht installiert sein
- **Mitwachsfähig:** Theme-JSON offenes Format; neue TB-Farbwerte zukünftiger Versionen erscheinen automatisch im Editor; bestehende Themes fallen auf Generator-Default zurück
**Technische Details**
- `Generator.php`: Neue Methoden `build_theme_css()`, `build_theme_switch_html()`, `load_themes()`; `write_files()` kopiert `theme-switch.js`
- `base_template/js/theme-switch.js`: Neues Frontend-Script (synchron geladen, kein FOUC)
- `base_template/css/style.css.tpl`: CSS für `.tb-theme-switch` / `.tb-theme-btn`
- `base_template/index.php.tpl`: `{{THEME_SWITCH}}` Token + `theme-switch.js` eingebunden
- `tool.php`: Neue Actions `tb_themes`, `tb_theme_save`, `tb_theme_delete`, `tb_theme_derive`, `tb_theme_switch_pos`
- `tool.php`: Neue Hilfsfunktionen `tb_get_themes()`, `tb_save_themes()`, `tb_derive_theme_colors()`, `tb_theme_color_groups()`
- `tool.php`: `tb_save_template()` schützt `theme`-Section vor DELETE (wie `bg_*`)
- `upgrade.php`: `theme-switch.js` zur `force_refresh_files`-Liste
Als nächstes würde ich mir den Header vornehmen.
Mir schwebt das was vor wie ein Gitter aus 1-3 Zeilen und 1-3 Spalten. Die Spalten mit verschiedenen Breiten (Presets?).
In die Zellen kann man die verschiedenen Header-Elemente wie Logo, Menü, Burger-Menü, Inhalts-Section, Utility-Bar, Breadcrumbs usw. anorden.
Offline