v0.4.0-alpha59
10.10.2026
Stable
Version 0.4.0-alpha59
Theme-Icons: CSS-Konflikt dauerhaft beseitigt
- In assets/blog-interactions.css setzt .blog-pulse-node__icon weder ein background
- noch eine background-color-Regel mit !important.
- Ebenso in assets/blog-frontend.css bei
- .blog-interaction-zone .blog-pulse-node__icon.
- Projekt-Themes dürfen Hintergrundbilder wie blog-pulse-aha.png ohne
- CSS-Kaskadenkonflikt zuweisen; neutrale Modul-Icons bleiben als SVG bestehen.
- Projekt-Templates, Blog-Daten, Import/Export und Moduleinstellungen sind unverändert.
- Installation:
- Vollständiges Modulrelease über den regulären CW-Modul-Updater installieren.
- Danach Cache der Modul-Assets und Browser-Cache aktualisieren.
- Bestehende lokale Theme-CSS-Patches mit !important sind nicht mehr nötig;
- vorhandene projektspezifische Designregeln nicht unkontrolliert überschreiben.
- Prüfung:
- CSS-Quelltexte auf die problematischen Hintergrund-Kurzschreibweisen geprüft.
- Dateibestand/Integrität auf Basis des vollständigen alpha58-Releases geprüft.
- Statische Chrome-CSS-Kaskade (Projekt-PNGs und Modul-SVG-Fallback) geprüft.
- Kein Test auf einer laufenden teitge.test-Installation.
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.4.0-alpha56
06.10.2026
Stable
Version 0.4.0-alpha56
Dokumentation / Handbuch
- Öffentlicher Einstieg erhält den neuen CW Blog & News Teaser als visuelle Auflockerung.
- Aktuelle Screenshots aus dem realen Backend ersetzen ältere Abbildungen für Editor, Serien, Import-Assistent und Kommentare.
- Neue Gegenüberstellung erklärt Backend-Menü und persönlichen Schnellzugriff mit eigenen Screenshots.
- HANDBUCH.md ergänzt dieselbe begriffliche Trennung.
- Beitragsliste
- Der komplette vordere Titel-/Infobereich eines aktiven Beitrags ist jetzt anklickbar und öffnet den Beitragseditor.
- Der bisherige Edit-Stift bleibt als zusätzliche, eindeutige Aktion erhalten.
- Hover- und Fokuszustände machen die größere Klickfläche sichtbar, ohne die Tabellenansicht unruhig zu machen.
- Modulpräsentation
- Neues 3D-Blog-Icon und neuer Blog-&-News-Teaser werden als Modul-Icon/Cover verwendet.
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.4.0-alpha55
06.10.2026
Stable
Version 0.4.0-alpha55
Dokumentation / Handbuch
- Neue öffentliche, standalone gerenderte Modulhilfe unter /modules/help/blog/.
- Neuer Backend-Menüpunkt „Handbuch“ mit direktem öffentlichen Link.
- Ausführliche Kapitel zu Beiträgen, Sections, Longread, Serien, Resonanz,
- Kommentaren, Medien, Frontend-Overrides und Sicherheit.
- Paketwege klar getrennt dokumentiert: Beitragspaket, AI-/Content-Paket,
- Projektpaket und Projekt-Demo.
- Eigenes Kapitel zum AI Blog-Content Studio mit Arbeitspaket, Strict Contract,
- Validator und sicherem Draft-Import.
- Gebündelte Dokumentation: docs/HANDBUCH.md, docs/IMPORT-EXPORT.md,
- docs/TECHNIK.md sowie aktualisierte docs/README.txt.
- Fünf aktuelle Screenshots zur Auflockerung und praktischen Orientierung.
Technik
- Öffentliche Hilfe wird über cw_modules_register_public_help_route() registriert.
- Hilfe-PHP bleibt im geschützten Modulordner; CSS und Screenshots werden über
- cw-module-asset.php aus assets/help/ ausgeliefert.
- Keine Datenbankmigration erforderlich.
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.4.0-alpha54
06.10.2026
Stable
Version 0.4.0-alpha54
Serien / Mehrteiler
- Neue Verwaltung „Beiträge dieser Serie“ direkt in der Serienbearbeitung.
- Reihenfolge der Teile per Drag & Drop ändern.
- Zusätzlich Hoch-/Runter-Pfeile als robuste und mobile Alternative.
- Positionsnummern werden live neu berechnet; Speicherung erfolgt bewusst über „Reihenfolge speichern“.
- Die bisherige Einstellung „Teil / Reihenfolge“ im einzelnen Beitragseditor bleibt vollständig erhalten und verwendet denselben Datenwert.
- Seriensortierung und Teilreihenfolge sind in der Oberfläche jetzt klarer getrennt: „Sortierung der Serie“ steuert nur die Reihenfolge verschiedener Serien.
- Status (Entwurf, geplant, veröffentlicht, archiviert) und direkter Bearbeiten-Link pro Serienteil.
- Serverseitige Validierung akzeptiert nur eine vollständige, eindeutige Reihenfolge der tatsächlich zugeordneten Beiträge.
Kompatibilität
- Keine Datenbankmigration erforderlich.
- Öffentliche Serienansicht und bestehende Beitragseinstellungen bleiben unverändert.
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.4.0-alpha53
06.10.2026
Stable
Version 0.4.0-alpha53
Beitragsimport
- Die große ZIP-Auswahlfläche im Import-Assistenten ist jetzt eine echte Drag-&-Drop-Zone.
- ZIP-Dateien können auf die Fläche gezogen und dort abgelegt werden.
- Drag-over-Zustand wird sichtbar hervorgehoben.
- Der Dateiname und die Dateigröße werden wie bei der normalen Dateiauswahl angezeigt.
- Nicht-ZIP-Dateien werden direkt sichtbar abgewiesen.
- Klick auf die Fläche und klassische Dateiauswahl bleiben vollständig erhalten.
- Beitragseditor
- Bei bereits gespeicherten Beiträgen gibt es jetzt oben direkt „Live ansehen“.
- Veröffentlichte Beiträge öffnen die echte öffentliche Frontend-URL in einem neuen Tab.
- Bei Entwürfen bzw. noch nicht öffentlich sichtbaren Beiträgen bleibt die Aktion sichtbar, aber deaktiviert.
- Die bestehende Backend-Vorschau für ungespeicherte Entwurfsstände bleibt davon getrennt.
Kompatibilität
- Keine Änderung an öffentlichen Routen oder gespeicherten Beitragsdaten.
- Bestehende Projekt-Overrides bleiben unverändert.
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.4.0-alpha52
06.10.2026
Stable
Version 0.4.0-alpha52
Serienübersicht im Minimal-Default
- Serienseite im neutralen CW-Minimal-Default ruhiger und redaktioneller gestaltet.
- Mehr Abstand zwischen Titelbereich, Serienbild und Teileliste.
- Dominante dunkle Bootstrap-Badges durch dezente, gerahmte Teil-Kennzeichnungen ersetzt.
- Teileliste als klare redaktionelle Zeilen mit Titel, längerem Teaser und dezenter Pfeilnavigation umgesetzt.
- Hover/Fokus bleiben bewusst zurückhaltend; keine zusätzlichen Karten, Verläufe oder Schatten.
- Mobile Darstellung stapelt Teil-Kennzeichnung und Inhalt sauber.
- Bestehende Projekt-Overrides bleiben weiterhin unangetastet.
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.4.0-alpha51
06.10.2026
Stable
Version 0.4.0-alpha51
Serienimport im Einzelbeitrag-Assistenten
- Der Import-Assistent prüft ein Einzelbeitragspaket jetzt bereits vor dem eigentlichen Import.
- Die Vorprüfung zeigt Beitrag, Zielstatus (neu/vorhanden), Medien, Custom-Code sowie enthaltene Serie und Teilposition.
- Serien werden nicht mehr pauschal blockiert, sondern als eigener Importbereich behandelt.
- Neuimport mit Serie: Wahl zwischen „Als Teil der Serie importieren“ und „Als Einzelbeitrag importieren“.
- Update eines vorhandenen Beitrags: Wahl zwischen bestehende Serienzuordnung beibehalten, Serie aus dem Paket übernehmen oder Serienzuordnung bewusst entfernen.
- Existiert die Zielserie bereits, bleiben ihre Stammdaten standardmäßig geschützt.
- Optional können Titel, Beschreibung, geplante Teile und Serienanzeige ausdrücklich aus dem Paket aktualisiert werden.
- Existiert die Zielserie noch nicht, wird sie bei gewähltem Serienimport automatisch angelegt.
- Serienänderungen werden vor dem Import im Sicherheits-Schritt deutlich angezeigt.
- Rollback stellt weiterhin den vorherigen Beitrags- und Serienzustand wieder her; neu angelegte, danach leere Serien werden entfernt.
- Bestehende Aufrufe aus alpha50 bleiben kompatibel.
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.4.0-alpha50
06.10.2026
Stable
Version 0.4.0-alpha50
- Sichere Einzelbeitragspakete dürfen optional genau eine Serienbeschreibung enthalten.
- Neue Beiträge übernehmen eine mitgelieferte Serie automatisch; bestehende Beiträge nur nach ausdrücklicher Freigabe im Import-Assistenten.
- Einzelbeitragsexporte nehmen vorhandene Serienmetadaten jetzt mit.
- Import-Ergebnis zeigt an, ob eine Serienzuordnung enthalten und angewendet wurde.
- Rollback berücksichtigt die Serienzuordnung und entfernt eine beim Import neu angelegte, danach leere Serie wieder.
- Weiterhin: externe Pakete werden als Entwurf importiert; CSS/JavaScript bleibt separat freigabepflichtig.
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.4.0-alpha49
06.10.2026
Stable
Version 0.4.0-alpha49
Minimal-Default aus bewährter Projektlogik
- Das Modul besitzt jetzt eigenes `assets/blog-frontend.js` für Longread-/Kapitel-Navigation.
- Scroll-Fortschritt, aktuelles Kapitel, TOC-Drawer, aktive Inhaltslinks sowie Rezept-Mengen und Rezept-Timer funktionieren damit auch in einem frisch installierten Standard-CW ohne Projekt-JavaScript.
- Der Default-Look wurde weiter beruhigt: weniger Kartenoptik, keine dekorativen Verläufe, kaum Schatten, einfache Linien und klare Abstände.
- Das Minimal-Default orientiert sich an den bewährten funktionalen Blogmustern aus bestehenden CW-Projekten, übernimmt aber keine projektspezifische Markenwelt.
- Abwärtskompatibilität / bestehende Projekte
- Existiert `project/assets/js/blog.js`, hat diese Datei weiterhin Vorrang. Das neue Modul-JavaScript wird dann bewusst NICHT zusätzlich geladen. Dadurch entstehen keine doppelten Scroll-, TOC- oder Rezept-Handler.
- Vollständig projektspezifische Blogs mit eigenen Blogtemplates und `project/assets/css/blog.css` behalten ihre bisherige Projektgestaltung; das neutrale Modul-Default wird dort nicht zusätzlich darübergelegt.
- Projekte ohne vollständige Blog-Skin erhalten automatisch das neue Modul-Default und können es weiterhin mit eigenem `blog.css` ergänzen.
- Damit kann ein bestehendes Projekt später bewusst migriert werden: zuerst Projekt-JavaScript verschlanken/entfernen, anschließend übernimmt die Modulbasis ohne Funktionsverlust.
- Longread / Kapitel
- Kapitelanzeige wechselt beim Scrollen zuverlässig anhand der sichtbaren/erreichten Section.
- Prozent- und Fortschrittsanzeige werden per requestAnimationFrame aktualisiert.
- Inhalts-Drawer lässt sich per Button, Schließen-Aktion und Escape bedienen.
- Aktive Kapitel-Links erhalten `aria-current=location`.
- Fallback funktioniert sowohl mit den Modultemplates als auch mit bestehenden semantischen Projekt-Blogtemplates.
- Nicht übernommen
- projektspezifische Effekte, Bubbles, Farben, Marken-Mastheads und Spezialrechner bleiben bewusst im jeweiligen Projekt.
- keine Datenbankmigration und keine Änderung vorhandener Beiträge.
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.4.0-alpha48
06.10.2026
Stable
Version 0.4.0-alpha48
Kommentarformular: Abbrechen wieder klar sichtbar
- Der Abbrechen-Button im Kommentarformular besitzt jetzt eine eigene,
- modulgeschützte Text-, Hintergrund- und Rahmenfarbe.
- Globale Projekt-/Theme-Buttonfarben können den Text nicht mehr weiß auf weiß
- oder anderweitig unlesbar überschreiben.
- Hover und Tastaturfokus bleiben bewusst schlicht und passen zum reduzierten
- Blog-Frontend.
- Der Footer-Abbrechen-Button hat eine eigene Klasse und ist damit sauber vom
- Schließen-X des Kommentar-Panels getrennt.
Kompatibilität
- keine Datenbankmigration
- keine Änderung an Kommentarlogik, Moderation oder API
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.4.0-alpha47
06.10.2026
Stable
Version 0.4.0-alpha47
Beitrag-Puls: schlichtes Default-Design
- Beitrag-Puls ist kein eigener Karten-/Featureblock mehr, sondern ein ruhiger
- Abschluss des Artikels mit einfacher Trennlinie
- kein eigener Hintergrund, keine Schatten, keine Verläufe und kein Orbit
- der dekorative PULS-Kreis wurde aus dem Markup entfernt
- Reaktionszahl wird nur noch unaufdringlich als Text angezeigt
- nur eine feine Trennlinie trennt den Puls vom Artikel; die vier Reaktionen
- stehen frei und ohne Kartenrahmen im normalen Inhaltsfluss
- statt farbiger Emoji-Kacheln verwendet das Modul große, klare Line-Icons
- mit runden Linien und leicht skizzenhaftem Charakter
- aktive Auswahl wird nur durch eine dezente Linie und minimale Flächenänderung
- kenntlich gemacht
- Follow-up-Auswahl und Ergebnisverteilung wurden ebenfalls auf eine einfache,
- transparente Darstellung ohne Verläufe reduziert
- Tablet- und Mobilansicht bleiben klar lesbar und werden sauber umgebrochen
Kompatibilität
- keine Datenbankmigration
- keine Änderung an bestehenden Reaktionen oder Einstellungen
- Interaktions-API und JavaScript-Verhalten bleiben unverändert
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.4.0-alpha46
06.10.2026
Stable
Version 0.4.0-alpha46
Eigenständiges Default-Frontend
- neues Modul-Stylesheet `assets/blog-frontend.css`
- ein frisch installiertes Standard-CW benötigt kein projektspezifisches
- `project/assets/css/blog.css`, damit Blog und Beiträge ordentlich aussehen
- ruhiger redaktioneller Satzspiegel für Titel, Teaser, Kapitel, Bilder,
- Tabellen, Zitate und Inhaltsnavigation
- Blogübersicht, Archiv, Serienseite und Startseitenblock erhalten eine
- konsistente Standarddarstellung auf Basis der aktiven CW-Theme-Tokens
- vorhandenes Projekt-CSS bleibt weiterhin als nachgelagertes Override möglich
- Beitrag-Puls
- der bisher sehr große Orbit wird im Standardlayout kompakt dargestellt
- Reaktionskarten stehen auf Desktop in einer ruhigen Reihe, auf mittleren
- Displays zweispaltig und mobil einspaltig
- Interaktionsbereich ist auf eine sinnvolle Inhaltsbreite begrenzt und läuft
- nicht mehr über die gesamte Browserbreite
- Optionale Projektassets
- `project/assets/css/blog.css` wird nur noch geladen, wenn die Datei existiert
- `project/assets/js/blog.js` wird nur noch geladen, wenn die Datei existiert
- damit keine Requests mit `v=missing` mehr in frischen Installationen
- Projektdateien bleiben bewusst Overrides und sind keine Voraussetzung
- Vorschau
- die echte Backend-Beitragsvorschau lädt dieselbe Modulbasis wie das Frontend
- optionale Projekt-Overrides werden auch dort nur bei vorhandener Datei geladen
- Installation
- keine Datenbankmigration
- keine Änderung bestehender Beitragsinhalte
- vorhandene Projekt-Blogstyles bleiben kompatibel und können die Defaults
- weiterhin überschreiben
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.4.0-alpha45
06.10.2026
Stable
Version 0.4.0-alpha45
Bugfix Einzelbeitrag-Import / Neuimport
- Einzelbeitragsexporte mit langen Slugs erzeugen jetzt immer eine gueltige Paketkennung mit maximal 80 Zeichen.
- Die Kennung bleibt kollisionsarm durch einen stabilen SHA-256-Kurz-Hash.
- Bereits mit alpha41 bis alpha44 erzeugte Einzelbeitragspakete mit zu langer Kennung werden beim Import kompatibel normalisiert.
- Ein Export kann damit in einer leeren CW-Installation als vollstaendiger neuer Blogbeitrag angelegt werden.
- Der Neuimport uebernimmt Beitrag, Inhaltsbereiche, Metadaten, Kategorie und mitgelieferte Bilder; optional enthaltenes CSS/JavaScript wird nur bei ausdruecklicher Freigabe angewendet.
- Importierte Beitraege bleiben aus Sicherheitsgruenden zunaechst Entwurf.
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.4.0-alpha44
06.10.2026
Stable
Version 0.4.0-alpha44
Export-Assistent: Abschlussanzeige und Asset-Cache
- Der laufende Export-Fortschritt wird beim erfolgreichen Abschluss zusätzlich per Inline-`display:none!important` beendet. Damit kann auch ein noch gecachtes älteres Stylesheet den Spinner nicht mehr sichtbar halten.
- Beim erneuten Öffnen des Assistenten wird die harte Ausblendung sauber zurückgesetzt.
- `blog-admin.css` und `blog-admin.js` erhalten nun einen Cache-Buster auf Basis des Dateizeitstempels. Nach einem Modulupdate lädt der Browser dadurch sicher die aktuellen Admin-Assets.
- Der Erfolgszustand wird weiterhin vor dem automatischen ZIP-Download gerendert; ein manueller Download bleibt im Fertig-Dialog möglich.
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.4.0-alpha43
06.10.2026
Stable
Version 0.4.0-alpha43
Einzelbeitrag-Export – Fertigstatus vor Download
- Der Export-Assistent schaltet nach erfolgreicher ZIP-Erstellung jetzt zuerst
- vollständig auf den Fertig-Zustand um.
- Spinner und Fortschrittsanzeige werden unmittelbar beendet und ausgeblendet.
- Erst nachdem der Browser den Erfolgszustand sichtbar gerendert hat, startet
- der automatische ZIP-Download.
- Der Fertig-Dialog enthält zusätzlich einen Button „ZIP herunterladen“, falls
- ein Browser den automatischen Download blockiert oder der Download erneut
- benötigt wird.
- Der Erfolgstext wurde auf „Export erfolgreich erstellt“ präzisiert.
Technik
- Der Ergebniszustand wird synchron gesetzt; kein verzögertes Ausblenden der
- Fortschrittsanzeige mehr.
- Blob-Download-URL bleibt für einen manuellen erneuten Download temporär
- verfügbar und wird anschließend freigegeben.
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.4.0-alpha42
06.10.2026
Stable
Version 0.4.0-alpha42
Korrektur
- Der Export-Assistent beendet die Fortschrittsanzeige nach erfolgreichem Export jetzt sauber.
- Spinner und Hinweis „Export wird vorbereitet“ werden nach Abschluss vollständig ausgeblendet.
- Die Ergebnisansicht „Export erfolgreich“ wird nicht mehr gleichzeitig mit der laufenden Animation dargestellt.
Technik
- Die `hidden`-Zustände von Fortschritts- und Ergebnisbereich werden im Assistenten nun explizit mit `display:none !important` respektiert.
- Dadurch bleibt das Verhalten auch bei den Grid-Layoutregeln des Modals stabil.
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.4.0-alpha41
06.10.2026
Stable
Version 0.4.0-alpha41
Neu
- Professioneller Schritt-für-Schritt-Assistent für Einzelbeitrag-Export direkt in der Beitragsverwaltung.
- Einzelbeitrag-Export wahlweise mit oder ohne verwendete Blogbilder.
- CSS/JavaScript kann optional in das Exportpaket aufgenommen werden.
- Professioneller Import-Assistent mit Upload-/Prüf-/Import-Fortschritt und klarer Ergebnisansicht.
- Importierte Einzelbeiträge werden weiterhin grundsätzlich als Entwurf gespeichert.
- Vor einem verändernden Import wird automatisch die bestehende Blog-Datenbanksicherung erzeugt.
- Nach einem erfolgreichen Einzelbeitragimport steht direkt „Letzten Import zurückrollen“ zur Verfügung. Vor dem Rollback wird erneut eine Sicherung angelegt.
Sicherheit
- CSS/JavaScript aus einem Paket wird beim Import niemals automatisch angewendet.
- Bei Updates bleibt vorhandenes Beitrags- und Section-CSS/JS vollständig erhalten, solange „CSS/JavaScript ebenfalls aktualisieren“ nicht ausdrücklich aktiviert wurde.
- Bei einem Neuimport ohne Code entsteht der neue Beitrag ohne Custom-Code.
- Mitgelieferte Medien werden weiterhin über Dateityp, Dateigröße und SHA-256 geprüft.
- Beim Rollback werden sicher gesicherte, ersetzte Medien zurückgespielt; neu erzeugte Bilder werden nicht blind gelöscht.
- Sichere Einzelbeitragspakete dürfen keine Templates, PHP-, Server- oder Projektdateien enthalten.
- Roundtrip
- 1. Beitrag in der Übersicht über das Export-Symbol öffnen.
- 2. Bilder und optional CSS/JavaScript auswählen.
- 3. ZIP exportieren und extern bearbeiten lassen.
- 4. Über „Beitrag importieren“ wieder einspielen.
- 5. Bei gleichem Slug kann der vorhandene Beitrag kontrolliert aktualisiert werden; andernfalls wird ein neuer Beitrag angelegt.
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.4.0-alpha40
08.09.2026
Stable
Version 0.4.0-alpha40
CSS und JavaScript pro Inhaltsbereich
- jeder Inhaltsbereich eines Blogbeitrags besitzt jetzt zusätzlich eigenes CSS und eigenes JavaScript
- im Bereichseditor stehen dafür die kompakten Unterreiter PHP/HTML, CSS und JavaScript zur Verfügung
- beitragsweites Custom-CSS und Custom-JavaScript bleiben als übergeordnete Ebene erhalten
- beim Duplizieren eines Bereichs werden HTML, CSS und JavaScript gemeinsam übernommen
- nach dem Speichern bleibt der zuletzt bearbeitete Bereich samt Code-Reiter geöffnet
- Asset-Compiler / Frontend
- CW erzeugt weiterhin nur ein CSS- und ein JavaScript-Asset pro Blogbeitrag
- Reihenfolge: beitragsweites CSS/JS zuerst, danach die Bereichs-Assets in Beitragsreihenfolge
- inaktive, zeitlich nicht sichtbare oder für Web deaktivierte Bereiche liefern keine Frontend-Assets
- bei zeitgesteuerten Bereichen erkennt die hashbasierte Asset-Pipeline die geänderte sichtbare Quellenmenge und baut bei Bedarf neu
- Quellmarker im erzeugten Bundle machen nachvollziehbar, welcher Code aus welchem Bereich stammt
- Daten / Migration
- neue Migration 016-section-assets ergänzt custom_css und custom_js in blog_post_sections
- vorhandene Beiträge und Inhaltsbereiche bleiben vollständig kompatibel; neue Felder sind standardmäßig leer
- Versionssnapshots enthalten Bereichs-CSS und Bereichs-JavaScript automatisch mit
- Vorlagen / Import
- Projektvorlagen exportieren und importieren Bereichs-CSS und Bereichs-JavaScript mit
- Medienplatzhalter in Bereichs-CSS werden wie beim beitragsweiten CSS portabel behandelt
- externe AI-/Content-Pakete bleiben aus Sicherheitsgründen codefrei und dürfen weiterhin kein CSS/JavaScript einschleusen
Kompatibilität
- CW 3.0.0-beta7 oder neuer
- PHP 8.3 oder neuer
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.4.0-alpha39
08.09.2026
Stable
Version 0.4.0-alpha39
Automatische Versionshistorie
- neue öffentliche Route /blog/changelog; bei abweichender Blog-Basisroute wird derselbe Changelog darunter ausgeliefert
- Versionshistorie wird automatisch aus den gebündelten RELEASE-NOTES-*.txt des installierten Moduls erzeugt
- echte Releases werden per Versionsnummer sortiert, neuester Release zuerst
- Entwicklungs-Zwischenstände mit -dev werden bewusst nicht als eigenständige Releases aufgeführt
- vorhandene 0.3.8- und 0.4.0-Alpha-Releases werden dadurch ohne zweite manuelle Changelog-Pflege sichtbar
- direkter Changelog-Link auf der öffentlichen Blog-Übersicht
Frontend
- Historie bleibt vollständig zugänglich, ist aber auf 580 px Maximalhöhe begrenzt und vertikal scrollbar
- mobil gilt eine kompaktere Maximalhöhe von 460 px
- Scrollbereich ist per Tastatur fokussierbar und besitzt einen sichtbaren Fokuszustand
- Release-Notes werden ausschließlich als Text eingelesen und bei der Ausgabe HTML-escaped
Backend
- neuer Menüpunkt Changelog unter Blog & News
- Backend verwendet exakt dieselbe Release-Notes-Quelle wie das Frontend
- zeigt aktuellen Stand und Anzahl dokumentierter Releases
- direkte Verknüpfung zur öffentlichen Changelog-Seite
- Wartung / Kompatibilität
- künftig genügt die normale RELEASE-NOTES-Datei eines Releases; die History aktualisiert sich automatisch
- keine Datenbankmigration erforderlich
- vorhandene Beiträge, Kategorien, Serien, Kommentare, Reaktionen, Medien und Projekteinstellungen bleiben unverändert
- CW 3.0.0-beta7 oder neuer
- PHP 8.3 oder neuer
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.4.0-alpha38
05.09.2026
Stable
Version 0.4.0-alpha38
- Einheitlicher Satzspiegel ist unter Blog & News → Einstellungen → Allgemein zwischen 820 und 1200 px einstellbar; Standard 1080 px.
- Optionale Sonderbreite wird automatisch als Standardbreite + 120 px berechnet, maximal 1320 px.
- Zentraler Layout-Guard schützt bestehende und neue Beiträge vor überbreiten Grid-, Flex-, Medien- und Inhaltsblöcken.
- Beitragsbild, Hero, OpenGraph und Standard-Übersichtsbild verwenden die CW-Image-Presets card, hero und og.
- Preset-Crops, Fokus und Zoom aus der zentralen CW-Image-Pipeline werden im Blog berücksichtigt.
- Der Blog-URL-Helper erzeugt auch bei ungewöhnlichem Basispfad keine doppelten //blog/-URLs mehr.
- Medienfelder sind für die preset-aware Picker-Integration von CW vorbereitet.
- Keine Datenbankmigration erforderlich.
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.4.0-alpha35
03.09.2026
Stable
Version 0.4.0-alpha35
- Neuer beitragsbezogener Schalter „Mengenrechner 1 / 2 / 4 / 6 / 8 anzeigen“ für Rezeptbeiträge.
- Bestehende Rezepte behalten den Mengenrechner standardmäßig; eine Ausblendung erfolgt nur explizit.
- Individuell gestaltete Rezeptschritte können über data-pdf-recipe-step samt Bild, Titel und Beschreibung strukturiert im PDF ausgegeben werden.
- Ein mit data-pdf-image markiertes Beitragsbild wird in frei gestalteten Rezeptabschnitten in die PDF-Ausgabe übernommen.
- FAQ- und Definitionsblöcke erhalten in der PDF-Ausgabe zuverlässige Zeilenumbrüche.
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.4.0-alpha34
02.09.2026
Stable
Version 0.4.0-alpha34
- Blogmedien-Platzhalter in Custom-CSS werden beim Import korrekt in den
- oeffentlichen Projektpfad aufgeloest. Damit funktionieren individuelle
- CSS-Hintergrundbilder direkt nach einem Projektimport.
- Der Vorlagenexport erkennt jetzt auch Blogmedien in Custom-CSS, wandelt sie
- wieder in portable {{blog_media:...}}-Referenzen um und nimmt die Dateien in
- das Exportpaket auf.
CW ≥ 3.0.0-beta7 PHP ≥ 8.3.0
v0.4.0-alpha33
30.08.2026
Stable
Version 0.4.0-alpha33
Fix User / Autor
- Projekt-Template muss die Autor-Ausgabe an den drei vorgesehenen Positionen aufrufen.
- Beiträge ohne öffentliche Autorenangabe werden beim Öffnen im Editor aus dem aktuell eingeloggten CW-User vorbelegt.
- Das gilt damit auch für bestehende/migrierte Beiträge; vorhandene Autorendaten werden nicht überschrieben.
- Die Vorbelegung wird erst beim Speichern des Beitrags dauerhaft übernommen.
- Erstellt-von und Zuletzt-geändert-von bleiben getrennte technische Historienfelder.
CW ≥ 3.0.0-beta5 PHP ≥ 8.3.0
v0.4.0-alpha32
30.08.2026
Stable
Version 0.4.0-alpha32
- neuer Einstellungsreiter „User / Autor“
- neue Beiträge können Name und E-Mail automatisch aus dem eingeloggten CW-User übernehmen
- öffentliche Autorenfelder pro Beitrag: Vorname, Nachname, E-Mail, Zitat und Ausgabeposition
- Ausgabepositionen: unter Titel, Beitragsanfang, Fußzeile, Titel + Fußzeile oder ausblenden
- E-Mail wird nur nach ausdrücklicher Freigabe öffentlich ausgegeben
- technische Historie getrennt vom öffentlichen Autor: „Erstellt von“ und „Zuletzt geändert von“
- neue Migration 015-user-author für bestehende Installationen
CW ≥ 3.0.0-beta5 PHP ≥ 8.3.0
v0.4.0-alpha31
28.08.2026
Stable
Version 0.4.0-alpha31
Erweiterung: Individueller Bildfokus für Beitragsempfehlungen
- Jede manuell verknüpfte Empfehlungskarte kann einen eigenen Fokus für X und Y erhalten.
- Wertebereich 0 bis 100: X steuert links/rechts, Y steuert oben/unten.
- Leere Fokusfelder übernehmen weiterhin automatisch den Bildfokus des Zielbeitrags.
- Der Fokus wird bereits an die CW-Image-Pipeline übergeben und zusätzlich für object-position verwendet.
- Bestehende Alpha-30-Verknüpfungen bleiben vollständig kompatibel und übernehmen automatisch den bisherigen Fokus.
- Alpha 29 und Alpha 30 bleiben vollständig enthalten.
CW ≥ 3.0.0-beta5 PHP ≥ 8.3.0
v0.4.0-alpha30
28.08.2026
Stable
Version 0.4.0-alpha30
Neue Funktion: „Was dir noch gefallen könnte“
- Pro Beitrag können bis zu drei passende Zielbeiträge ausgewählt und angeordnet werden.
- Verfügbar sind manuelle Auswahl, automatische Empfehlungen und automatisches Auffüllen.
- Die Automatik verwendet bevorzugt veröffentlichte Beiträge derselben Kategorie.
- Aktueller Beitrag, Papierkorb-Inhalte und noch nicht veröffentlichte Ziele werden im Frontend ausgeschlossen.
- Responsive Bildkarten verwenden die bestehende CW-Image-Pipeline.
- Projekt-Templates aus älteren Installationen erhalten eine kompatible Fallback-Ausgabe.
- Die Konfiguration wird zusammen mit dem Beitrag versioniert und importiert.
- Alpha 29 mit dem Admin-CSS-Fix für Ausgabeziele bleibt vollständig enthalten.
CW ≥ 3.0.0-beta5 PHP ≥ 8.3.0
v0.4.0-alpha29
27.08.2026
Stable
Version 0.4.0-alpha29
Bugfix: Ausgabeziele im Mehrbereichs-Editor
- Die Ausgabeziel-Matrix verwendete noch alte --admin-* CSS-Variablen.
- Im hellen/neutralen Admin-Theme fiel der Hintergrund deshalb auf den dunklen Fallback #111b24 zurück, während Beschriftungen dunkel blieben.
- Die Komponente verwendet jetzt die offiziellen Blog/Admin-Variablen --surface-soft, --surface, --text, --muted und --line.
- Checkbox-Beschriftungen erhalten explizit die passende Textfarbe.
- Für das Dark-Theme gibt es eine eigene kontrastreiche Darstellung.
- Keine Datenbank- oder Templateänderung.
CW ≥ 3.0.0-beta5 PHP ≥ 8.3.0
v0.4.0-alpha28
27.08.2026
Stable
Version 0.4.0-alpha28
Neu
- Wiederverwendbare Live-API-Demo-Komponente für technische Blogbeiträge.
- `assets/blog-api-demo.js` verarbeitet bewusst nur Same-Origin-Endpunkte.
- Status-, POST- und Validierungs-Testcalls können ohne Inline-JavaScript direkt aus sicher importierbarem Content-Markup ausgelöst werden.
- Neue `.cw-blog-api-demo*` Styles für Request-Steuerung, HTTP-Status und JSON-Antwort.
Sicherheit
- Kein eval(), kein Inline-Script und keine externen Origins.
- Ausgabe erfolgt ausschließlich über textContent; API-Antworten werden nicht als HTML interpretiert.
- Die Content-Paketregeln bleiben unverändert: `<script>`, Inline-JS und Inline-CSS bleiben im Import verboten.
CW ≥ 3.0.0-beta5 PHP ≥ 8.3.0
v0.4.0-alpha27
27.08.2026
Stable
Version 0.4.0-alpha27
Editorial Link Styling Fix
- baut auf Blog & News 0.4.0-alpha26 auf
- normale Links in Fließtext, Listen, Tabellen, Blockquotes und Bildunterschriften
- sind im öffentlichen Artikelinhalt jetzt eindeutig als Links erkennbar
- ruhige gestrichelte Unterstreichung im Normalzustand
- Hover: kräftigere Linkfarbe, durchgezogene Unterstreichung und sehr dezentes Highlight
- Focus-Visible für Tastaturbedienung ergänzt
- Buttons, Badges, Navigation und Serien-Badges bleiben von diesem Linkstil ausgenommen
- bestehende dunkle `.blog-source-box` behält ihre kontrastreiche weiße Linkdarstellung
- Portabilitäts-Fix für Content Components
- CSS-Variablen der Content-Komponenten gelten jetzt sowohl für das
- Projekt-Template `.blog-article-paper` als auch für das Modul-Standardtemplate
- `.blog-post-content`
- Longread-Bootstrap-Aufwertung unterstützt sowohl `.blog-layout--longread`
- als auch `.blog-post--longread`
- dadurch funktionieren Nummernboxen, KPI-Karten, Deep-Dives und weitere
- Komponenten auch ohne projektspezifisches Blog-Template konsistent
- Installation
- benötigt CW – Control & Watch 3.0.0-beta5 oder neuer und PHP 8.3
- keine Datenbankmigration
- keine Änderung an Beitrags- oder Projektinhalten
- kompatibel mit CW 3.0.0-beta7
CW ≥ 3.0.0-beta5 PHP ≥ 8.3.0
v0.4.0-alpha26
27.08.2026
Stable
Version 0.4.0-alpha26
Longread Content Components
- baut auf Blog & News 0.4.0-alpha25 auf
- neues Frontend-Stylesheet `assets/blog-content-components.css`
- wiederverwendbare, projektunabhängige Komponenten für längere Blogbeiträge:
- nummerierte Schritt-/Kurzinfo-Karten
- KPI-/Statistik-Karten
- Deep-Dive-Hinweisboxen
- Daten-/Nährwert-Karten
- Prozess-/Ablaufdarstellung
- Mythos-vs.-Fakt-Karten
- Takeaway- und Warnhinweise
- vorhandene Bootstrap-Utility-Karten in Longreads werden dezent aufgewertet,
- damit ältere Imports ohne beitragseigenes CSS bereits besser aussehen
- alle Styles sind auf `.blog-article-paper`/Longreads begrenzt und verwenden
- die vorhandenen Blog-/Theme-Variablen
- responsive Darstellung und Druckregeln enthalten
- Warum im Modul?
- Diese Darstellung gehört zum Blog-Renderer und nicht in einzelne Beiträge.
- Projekt- oder beitragseigenes CSS ist damit nicht nötig; Projekt-CSS kann die
- Moduldefaults weiterhin gezielt überschreiben.
- Installation
- benötigt CW – Control & Watch 3.0.0-beta5 oder neuer und PHP 8.3
- keine Datenbankmigration
- keine Änderung an Projekt- oder Inhaltsdaten
- kompatibel mit CW 3.0.0-beta7
CW ≥ 3.0.0-beta5 PHP ≥ 8.3.0
v0.4.0-alpha25
24.08.2026
Stable
Version 0.4.0-alpha25
Backend-Danger-Buttons
- baut auf Blog & News 0.4.0-alpha24 auf
- die bisher globale Blog-Regel für `.button.danger` ist auf die
- Kommentarmoderation begrenzt und überschreibt nicht mehr alle roten Aktionen
- im Blog-Backend
- gefährliche Aktionen verwenden auch in Kommentar- und Resonanzansichten
- roten Hintergrund und gut lesbare weiße Schrift
- zusammen mit CW – Control & Watch 3.0.0-beta5 sind Entfernen-, Papierkorb-
- und Löschaktionen im gesamten Backend einheitlich dargestellt
- Installation
- benötigt CW – Control & Watch 3.0.0-beta5 und PHP 8.3
- keine Datenbankmigration
- keine Änderung an Projekt- oder Inhaltsdaten
CW ≥ 3.0.0-beta5 PHP ≥ 8.3.0
v0.4.0-alpha24
23.08.2026
Stable
Version 0.4.0-alpha24
Release-Basis
- CW 3.0.0-beta4 oder neuer
- PHP 8.3 oder neuer
- Basis: Blog & News 0.4.0-alpha23
- Neu: Beitrag-Puls
- vier eigenständige Reaktionen: Aha!, Hilfreich, Mehr davon und Nicht ganz
- optionale zweite Feedbackebene: Genau richtig, Mehr Praxis, Mehr Details, Zu technisch und Zu lang
- eine Reaktion pro Besucher/Beitrag; die Auswahl kann später geändert werden
- öffentliche Reaktionsanzahl optional
- Verteilung kann optional erst nach eigener Reaktion eingeblendet werden
- global schaltbar und pro Beitrag mit Ein/Aus/Standard überschreibbar
- Neu: Kommentare und Moderation
- Kommentare global und pro Beitrag vollständig abschaltbar
- globale Voreinstellung: Kommentare aus
- Moderationsarten: immer prüfen, bekannte freigegebene Absender oder Sofortfreigabe
- öffentlich erscheinen ausschließlich freigegebene Kommentare
- eigene Moderationsansicht für wartende, freigegebene, Spam- und ausgeblendete Kommentare
- optionales E-Mail-Feld; E-Mail-Adressen werden niemals öffentlich ausgegeben
- Spamschutz / Sicherheit
- CSRF-Schutz und Einmal-Submission-Token
- Honeypot, Mindestzeit, Rechen-Captcha, Rate-Limit und Dublettenprüfung
- konfigurierbares Link-Limit und lokale Spam-Muster
- eigener WAF-Scope `blog-interaction` für notwendige POST-Anfragen
- der normale öffentliche WAF-Scope bleibt unverändert
- keine Roh-IP wird in den Blog-Interaktionstabellen gespeichert
- Neu: Resonanzstatistik
- internes Resonanz-Dashboard für Reaktionen und Leserwünsche
- Reaktionen im Verhältnis zu vorhandenen Analytics-Aufrufen
- Auswertung nach Land, Stadt und Gerät, soweit diese Informationen über die vorhandene
- CW-Analytics-/GeoIP-Konfiguration datenschutzkonform zur Verfügung stehen
- Blog speichert dafür nur den abgeleiteten Besucher-/Session-Hash und die freigegebenen Kontextwerte
- Datenbank
- neue Migration 013-interactions
- blog_posts erhält pulse_mode, comments_mode und comments_moderation
- neue Tabellen blog_reactions und blog_comments
- Foreign Keys entfernen Interaktionsdaten beim endgültigen Löschen eines Beitrags mit
- bestehende Blog-Backup-Regel für project/storage/content.sqlite bleibt erhalten
- Frontend / Projekt-Templates
- das Standard-Post-Template bindet die Interaktionszone unterhalb des eigentlichen Artikels ein
- das Modul liefert eine neutrale portable CSS-/JS-Basis
- Projekt-Themes können die Interaktionszone vollständig gestalten, ohne den Modulcode zu ändern
- Hinweis: Projekte mit vollständig überschriebenem project/templates/blog/post.php müssen die
- Interaktionszone selbst mit cw_blog_render_interaction_area($post) einbinden
Kompatibilität
- bestehende Beiträge übernehmen für Puls und Kommentare standardmäßig die globalen Einstellungen
- Kommentare bleiben nach der Migration standardmäßig deaktiviert
- Beitrag-Puls ist standardmäßig aktiviert und kann global oder pro Beitrag deaktiviert werden
- keine Änderung am CW-Core erforderlich
CW ≥ 3.0.0-beta4 PHP ≥ 8.3.0
v0.4.0-alpha23
23.08.2026
Stable
Version 0.4.0-alpha23
Schwerpunkt: sicherer AI-/Content-Import
- Neu / geändert:
- Der Bereich „Projekt & Demo“ erkennt ZIP-Pakete jetzt automatisch.
- Klassische Projektpakete mit cw-blog-project-package.json bleiben vollständig kompatibel.
- AI-/Content-Pakete mit manifest.json und format „cw-blog-project-demo“ können unverändert importiert werden.
- AI-/Content-Pakete dürfen ausschließlich genau einen Beitrag, Sections, Kategorien und deklarierte Blogmedien enthalten.
- Projektdateien, Templates, CSS, JavaScript, PHP, Serverkonfiguration und Blog-Einstellungsänderungen werden im AI-/Content-Weg abgelehnt.
- Der Beitragsstatus wird bei AI-/Content-Paketen immer als Entwurf erzwungen.
- Gleicher-Slug-Konflikte verwenden die vorhandenen Optionen „behalten“ oder „aktualisieren“; bei „behalten“ werden auch Paketmedien nicht installiert oder ersetzt.
- Medien werden vor dem Import erneut auf Pfad, deklarierte Größe, Dateisignatur und SHA-256 geprüft.
- {{blog_media:...}}-Referenzen müssen auf tatsächlich deklarierte Paketmedien zeigen.
- Das ZIP wird kontrolliert gelesen; Pfadwechsel, Symlinks, doppelte Einträge und nicht deklarierte Dateien werden abgelehnt.
- Projekt-Demo-Import kann intern ohne Übernahme von Einstellungen und Demo-Status verwendet werden; bestehendes Verhalten bleibt standardmäßig unverändert.
Sicherheit
- AI-/Content-Import verwendet keine Projektdatei-Installation.
- Keine .htaccess, .user.ini, web.config oder php.ini im Release-Patch.
- Vor dem Inhaltsimport wird weiterhin die bestehende Blog-Datenbanksicherung angelegt.
- Release-Basis:
- CW 3.0.0-beta4
- PHP 8.3 oder neuer
CW ≥ 3.0.0-beta4 PHP ≥ 8.3.0
v0.4.0-alpha22
22.08.2026
Stable
Version 0.4.0-alpha22
- CW-Image-Pipeline im Blog aktiviert: lokale Bilder aus project/assets/img und project/uploads werden automatisch über cw_image() ausgeliefert.
- Beitrags-, Hero-, Übersichts-, Serien- und Suchbilder erhalten optimierte Varianten mit Fokuspunkt und sicherem Fallback auf die Original-URL.
- Bilder innerhalb gespeicherter Blog-Bereiche werden beim Rendern automatisch über die CW-Image-Pipeline geführt; im Artikelinhalt ist dafür kein PHP/cw_image()-Aufruf nötig.
- Open-Graph-/Social-Bilder lokaler Medien werden als 1200x630-JPEG-Variante erzeugt, passend für Facebook & Co.
- Externe URLs, Data-/Blob-Bilder und Modulassets bleiben unverändert; bei nicht unterstützten Pfaden oder Pipeline-Fehlern wird immer die bisherige direkte URL verwendet.
- Projekt-Templates profitieren automatisch, da die Transformation zentral im Blog-Renderer erfolgt.
- Backend-Schnellzugriff/Arbeitsverlauf integriert: gespeicherte Blogbeiträge werden als Arbeitsinhalte erfasst; Papierkorb-/Löschaktionen entfernen veraltete Schnellzugriffe.
- Quellcode-Editor: Schriftgrößensteuerung übernimmt nun die tatsächlich konfigurierte Editor-Schriftgröße und passende Zeilenhöhe statt fest verdrahteter 14 px.
- Release-Basis auf CW 3.0.0-beta3 und PHP 8.3 angehoben.
CW ≥ 3.0.0-beta3 PHP ≥ 8.3.0
v0.4.0-alpha21
18.08.2026
Stable
Version 0.4.0-alpha21
- Cover technisch auf exakt 1200 x 600 px normalisiert.
- Außenkante vollständig rechteckig: kein Corner-Radius, keine Alpha-Maske, keine eingebauten Rundungen.
- Äußerste Generator-Kante entfernt, damit keine optischen Radius-/Rahmenartefakte verbleiben.
- Icon und übriger Modulstand aus alpha20 unverändert übernommen.
CW ≥ 3.0.0-alpha11 PHP ≥ 8.2.0
v0.4.0-alpha19
18.08.2026
Stable
Version 0.4.0-alpha19
- Cover/Vorschaubild nach der neuen CW Modul-CI überarbeitet.
- Hintergrund-Farbschema an das neue gold/ockerfarbene Blog-&-News-Icon angepasst.
- Helleres CI-Teaserbild mit ruhigerem, konsistenterem Gesamtauftritt.
- Basiert auf der aktuellen alpha18-Version des Moduls.
CW ≥ 3.0.0-alpha11 PHP ≥ 8.2.0
v0.4.0-alpha18
18.08.2026
Stable
Version 0.4.0-alpha18
- Modul-Icon nach der neuen CW Modul-CI überarbeitet.
- Neues freigestelltes Blog-&-News-Icon mit gold/ockerfarbenen Akzenten und CI-Hintergrundfläche mit Radius.
- Cover/Vorschaubild aus alpha17 bleibt unverändert erhalten.
- Basiert auf der aktuellen alpha17-Version des Moduls.
CW ≥ 3.0.0-alpha11 PHP ≥ 8.2.0
v0.4.0-alpha17
17.08.2026
Stable
Version 0.4.0-alpha17
- Neues reduziertes Modul-Icon im Stil des CW Module Lab.
- Neues helleres Cover/Vorschaubild für Backend, Repository und Release-Server.
- Presentation-Assets auf aktuelle Blog-&-News-Grafiken aktualisiert.
- Basiert auf der aktuellen alpha16-Version des Moduls.
CW ≥ 3.0.0-alpha11 PHP ≥ 8.2.0
v0.4.0-alpha16
17.08.2026
Stable
Version 0.4.0-alpha16
- Neues Modul-Icon im einheitlichen CW-Modulstil.
- Neues Cover/Vorschaubild für Backend, Repository und Release-Server.
- Presentation-Assets auf WebP umgestellt.
- Modulanforderung auf CW 3.0.0-alpha11 angehoben.
CW ≥ 3.0.0-alpha11 PHP ≥ 8.2.0
v0.4.0-alpha15
16.08.2026
Stable
Version 0.4.0-alpha15
Search Live-Sync und Serienauswahl für den Startseiten-Slider
- Blogbeiträge synchronisieren ihren Search-Treffer direkt nach Anlegen und Speichern
- Änderungen an Titel, Teaser, Slug, Kategorie, Serie und Beitragsbild erscheinen ohne vollständigen Index-Rebuild in der Suche
- Papierkorb entfernt den Treffer sofort aus dem Suchindex
- Wiederherstellen nimmt veröffentlichte Beiträge wieder in den Suchindex auf
- endgültiges Löschen bereinigt den Suchtreffer
- Search Suggest verwendet das sichtbare Übersichts-/Beitragsbild statt eines eventuell abweichenden Open-Graph-Bildes
- Serien erhalten die Einstellung für den Startseiten-Slider: neuester veröffentlichter Teil, bestimmter Teil, alle Teile oder Serie ausblenden
- die Serienfilterung erfolgt bereits vor LIMIT/Pagination, damit der Startseiten-Slider vollständig gefüllt bleibt
- neue Migration 012-series-startpage-slider
- Serien-Slider-Einstellung wird in CW-Projektvorlagen exportiert und beim Demoimport wiederhergestellt
- Projekt-Demo-Import aktualisiert anschließend den Search-Index
- Voraussetzungen
- CW 3.0.0-alpha10 oder neuer
- PHP 8.2 oder neuer
CW ≥ 3.0.0-alpha10 PHP ≥ 8.2.0
v0.4.0-alpha14
16.08.2026
Stable
Version 0.4.0-alpha14
- Serienübersicht: Hero-/Fallback-Bild auf 16:7 erhöht, damit wichtige Bildinhalte weniger stark beschnitten werden.
- teitges-Projektlayout: Serien-Hero auf Desktop 16:7, mobil 16:9.
- Keine Datenbankmigration erforderlich.
CW ≥ 3.0.0-alpha8 PHP ≥ 8.2.0
v0.4.0-alpha9
15.08.2026
Stable
Version 0.4.0-alpha9
Serien / Mehrteiler
- Neue Serienverwaltung im Backend.
- Beiträge können optional einer Serie zugeordnet und als Teil 1, Teil 2 usw. sortiert werden.
- Serien können eine geplante Gesamtzahl erhalten. Dadurch kann z. B. bereits der erste veröffentlichte Beitrag „Teil 1 von 4“ anzeigen.
- Automatische Serien-Badges in Blogübersicht, Startseitenblock und Archiv.
- Beitragsseite zeigt Serienübersicht, alle veröffentlichten Teile und Vor/Zurück-Navigation.
- Öffentliche Serienseite unter /blog/serie/<slug>/.
- Suche indexiert den Serientitel und liefert Serien-Metadaten mit.
- Projekt-Demo-Export/-Import übernimmt Serien und Teilnummern.
- Erste geplante Nutzung
- Serie: dialyse-ernaehrung.de kennenlernen
- Teil 1: Lebensmittelsuche – schnell starten, Optionen, Suggest, Suchassistent und Ergebnisse verstehen
- Teil 2: Ernährungstagebuch
- Teil 3: Tageswerte, Limits und Auswertungen
- Teil 4: Nährstoff-Info-Datenbank
CW ≥ 3.0.0-alpha6 PHP ≥ 8.2.0
v0.4.0-alpha8
15.08.2026
Stable
Version 0.4.0-alpha8
Medienintegration und flexible Startseiten-Ausgabe.
- Neu / geändert:
- Beitragsbild, eigenes Herobild und Open-Graph-/Social-Bild sind echte CW-Medienselektoren statt Freitext-Pfadfeldern
- neue Medienreferenzen featured_media_id, hero_media_id und og_media_id
- Migration 009 verbindet bestehende Bildpfade nach Möglichkeit automatisch mit dem zentralen CW-Medienindex
- bestehende Pfadfelder bleiben zur Abwärtskompatibilität erhalten
- Bild- und Social-Vorschau im Blogeditor verwenden die tatsächlichen Medien
- Projekt-/Demoimporte synchronisieren importierte Medien direkt mit dem CW-Medienindex
- Startseiten-Block um optionale Themen-/Kategorie-Filter erweitert
- optionale Sortierung: neueste, älteste, zuletzt geändert (neu/alt), A-Z und Z-A
- neue Blockparameter: category, categories, filters, sorting, sort_default, sort_options und query_prefix
- Filter und Sortierung arbeiten serverseitig über die Blogabfrage
- Standard-Startseitentemplate enthält neutrale Filter-/Sortiercontrols; Projekt-Templates können die Darstellung frei überschreiben
- öffentliche Admin-/Rezeptvorlagen von projektspezifischen Domain- und Nischenbeispielen bereinigt
- Voraussetzung:
- CW – Control & Watch 3.0.0-alpha7 oder neuer
- PHP 8.2 oder neuer
- Datenbank:
- neue Blogmigration 009-media-links
- vor einem Modulupdate wie üblich Backup der project/storage/content.sqlite empfohlen
- Status:
- Alpha / Preview
CW ≥ 3.0.0-alpha7 PHP ≥ 8.2.0
v0.4.0-alpha7
13.08.2026
Stable
Version 0.4.0-alpha7
PDF-/Druck-Feinschliff fuer Rezepte:
- optionales Beitrags-/Hero-Bild im Rezeptkopf
- Bild wird mit Fokuspunkt passend zugeschnitten
- JPEG direkt; PNG/WebP/GIF werden bei vorhandenem GD oder Imagick in-memory konvertiert
- mehrzeilige Zutaten erhalten automatisch mehr Zeilenhoehe
- Trennlinien sitzen mittig zwischen den Zutatenzeilen
- letzte Zutatenzeile bekommt keine unnoetige innere Trennlinie
- Zubereitung beginnt nach einem Zutatenbereich auf einer neuen Seite
- Kurzfassung bleibt damit klar getrennt: Rezeptkopf + Zutaten / Zubereitung
- Die bestehenden Ausgabeziele Web, Kurzfassung und Langfassung sowie
- Seitenumbruch-/Zusammenhalten-Regeln bleiben erhalten.
CW ≥ 3.0.0-alpha6 PHP ≥ 8.2.0
v0.4.0-alpha6
13.08.2026
Stable
Version 0.4.0-alpha6
PDF / Druck
- Rezept-PDF wird nicht mehr als einfacher Fließtext gesetzt.
- Zutaten werden als kompakte zweispaltige Rezeptkarten ausgegeben.
- Zubereitungsschritte erhalten nummerierte zweispaltige Karten.
- Gesundheit/Vitalstoffe erscheinen als strukturierte Infokarten.
- Nährwerte werden in einer kompakten Kennzahlenmatrix dargestellt.
- Dialyse-Check erhält eigene Statuskarten und Hinweisbox.
- Varianten, Notizen und freie Bereiche bleiben als dokumentfreundliche Infoblöcke erhalten.
- Kurzfassung und Langfassung verwenden weiterhin die Ausgabeziele der Inhaltsbereiche.
- Gewählte Rezept-Portionszahl wird weiterhin serverseitig skaliert.
- Langfassung behält das automatische Inhaltsverzeichnis.
Backend
- Beim Bearbeiten eines vorhandenen Beitrags ist in der Modulnavigation jetzt "Beiträge" aktiv.
- "Neuer Beitrag" wird nur beim tatsächlichen Anlegen eines neuen Beitrags als aktiv markiert.
Kompatibilität
- Update direkt von 0.4.0-alpha5.
- Keine Datenbankmigration erforderlich.
CW ≥ 3.0.0-alpha6 PHP ≥ 8.2.0
v0.4.0-alpha5
13.08.2026
Stable
Version 0.4.0-alpha5
Backend / Einstellungen
- Einstellungen in fünf thematische Tabs gegliedert:
- Allgemein, Archiv & SEO, PDF & Druck, Projekt & Demo, Wartung.
- Jeder Themenbereich speichert nur seine eigenen Einstellungen.
- Projektpaket- und Demo-Import sind aus den normalen Einstellungen herausgelöst.
- Der Gefahrenbereich liegt separat unter Wartung.
- Projektpaket-Importer
- Checkbox-Zustände bleiben nach fehlgeschlagener Prüfung erhalten.
- Demobeiträge importieren ist bei Projektpaket-Updates standardmäßig deaktiviert.
- Optionen für Demoinhalte werden nur eingeblendet, wenn der Demoimport aktiv ist.
- Die Formulierung Entwurfsstatus erzwingen macht klar, dass sonst der Paketstatus gilt.
- Hinweis ergänzt, dass Browser nach einem Fehler nur die ZIP-Datei erneut verlangen.
- PDF / Druck
- Einstellungen beschreiben jetzt die serverseitige Kurz-/Langfassung statt des alten Browser-PDF-Wegs.
- Nicht mehr wirksame alte Browserdruck-Optionen werden in der Oberfläche nicht mehr angeboten.
Kompatibilität
- Update direkt von 0.4.0-alpha4.
- Keine neue Datenbankmigration erforderlich.
CW ≥ 3.0.0-alpha6 PHP ≥ 8.2.0
v0.4.0-alpha4
13.08.2026
Stable
Version 0.4.0-alpha4
PDF / Print Foundation
- echte serverseitige PDF-Ausgabe ohne Browser-HTML-Drucklayout
- zwei Dokumentprofile: Kurzfassung und Langfassung
- Langfassung mit automatisch erzeugtem Inhaltsverzeichnis
- Seitenzahlen und Online-URL im Dokument
- Rezept-Metadaten werden im PDF-Kopf ausgegeben
- gewählte Rezept-Portionen können an PDF/Druck übergeben werden; Zutaten mit
- data-recipe-amount werden serverseitig passend skaliert
- Drucken öffnet eine feste PDF-Druckansicht statt die Website zu drucken
- PDF-Dateien werden direkt aus CW erzeugt; keine externe PDF-Bibliothek erforderlich
- Ausgabeziele je Inhaltsbereich
- Web / HTML
- Kurzfassung
- Langfassung
- beliebige Kombinationen möglich
- Bereiche können nur im Web, nur im Dokument oder überall erscheinen
- neue Seite beginnen
- Bereich möglichst zusammenhalten
- Bestehende Inhalte
- bestehende Bereiche sind standardmäßig in Web, Kurz- und Langfassung sichtbar
- bei bestehenden Rezepten werden Gesundheit & Vitalstoffe, Dialyse-Check,
- Varianten und Notizen automatisch aus der Kurzfassung herausgenommen
- Zutaten und Zubereitung bleiben in Kurz- und Langfassung
Technik
- neue Migration 008-output-profiles
- PDF wird direkt aus der Bereichsstruktur erzeugt
- PDF-only-Bereiche werden nicht in den kompilierten Webinhalt oder die Websuche übernommen
- keine externe Laufzeit-Abhängigkeit
Kompatibilität
- ältere Projekt-Demos ohne Ausgabeziel-Felder bleiben automatisch in Web,
- Kurz- und Langfassung sichtbar
- neue Demo-Exporte speichern die Ausgabeziele und Dokumentregeln mit
- Frontend-Vorschau berücksichtigt Web/HTML-Sichtbarkeit; Einzelbereichsvorschau
- kann auch reine Dokumentbereiche weiterhin gezielt anzeigen
CW ≥ 3.0.0-alpha6 PHP ≥ 8.2.0
v0.4.0-alpha3
13.08.2026
Stable
Version 0.4.0-alpha3
Neu
- Standardsortierung in Blog-Einstellungen
- Neueste zuerst als Standard
- optionale Sortierung:
- Neueste zuerst
- Älteste zuerst
- Titel A-Z
- Titel Z-A
- Sortierung bleibt bei Suche, Kategorien und Pagination erhalten
- Projekt-Templates können die aktive Sortierung über die Variable "sort" ausgeben
- Weiterhin enthalten:
- Standard-, Longread-/Guide- und Rezept-Layouts
- Rezeptvorlage und 1/2/4/6/8-Portionsrechner
- automatisches Archiv
- Druck/PDF-Ausgabe
- Mehrbereichs-Editor und Editor-Foundation
- Update:
- direkt von 0.4.0-alpha2
- keine Datenbankmigration erforderlich
CW ≥ 3.0.0-alpha6 PHP ≥ 8.2.0
v0.4.0-alpha2
13.08.2026
Stable
Version 0.4.0-alpha2
Zweiter Ausbau der Blog-Foundation mit wiederverwendbarer Rezeptvorlage.
Neu
- eigene Aktion "Neues Rezept" in der Beitragsverwaltung
- vorbereitete Rezeptstruktur mit Bereichen:
- Zutaten
- Zubereitung
- Gesundheit & Vitalstoffe
- Dialyse-Check
- Varianten & Servieren
- Notizen
- Basisportionen und frei waehlbare Portionsbezeichnung
- Mengenrechner fuer 1, 2, 4, 6 und 8 Personen / Portionen / Tassen
- Zutatenmengen mit data-recipe-amount werden im Frontend live umgerechnet
- der aktuell gewaehlte Mengenstand wird beim Drucken / PDF-Speichern uebernommen
- Rezeptvorlage bleibt im normalen Mehrbereichs-Editor voll bearbeitbar
- Weiterhin enthalten aus 0.4.0-alpha1:
- Standard-, Longread-/Guide- und Rezept-Layouts
- Longread-Kapitelnavigation und Lesefortschritt
- Bereichsbreiten Text, Breit und Volle Breite
- automatisches Blog-Archiv und optionaler Archivstatus
- Druck/PDF-Ausgabe
- Rezept-Metadaten und optionaler Timer
- Kompatibilitaet:
- Update von Blog & News 0.4.0-alpha1
- CW 3.0.0-alpha6 oder neuer
- PHP 8.2 oder neuer
- keine neue Datenbankmigration gegenueber 0.4.0-alpha1 erforderlich
- bestehende Beitraege und Rezeptbeitraege bleiben kompatibel
- Projektintegration:
- projektspezifische Templates, CSS und JavaScript liegen weiterhin ausserhalb
- des Modulordners und werden durch das Modulupdate bewusst nicht ueberschrieben
- fuer teitge.test gibt es ein separates Integrationspaket passend zu alpha2
- Status:
- Alpha / Preview - zuerst auf teitge.test pruefen.
CW ≥ 3.0.0-alpha6 PHP ≥ 8.2.0
v0.3.8-alpha9
13.08.2026
Stable
Version 0.3.8-alpha9
Media-Portability-Fix für Projektvorlagen.
- Neu / geändert:
- Blogmedien aus project/uploads/blog werden beim Projektvorlagen-Export robuster erkannt
- unterstützt Root-Pfade, Installationen in Unterverzeichnissen und absolute http(s)-URLs
- URL-Query/Fragment wird bei der Mediendatei sauber getrennt
- referenzierte Medien werden vor dem Export auf Existenz, erlaubten Pfad, Dateigröße und SHA-256 geprüft
- fehlt auch nur ein referenziertes Bild, bricht der Export mit einer klaren Fehlermeldung ab
- fehlende Bilder können dadurch nicht mehr still aus einem .cwtemplate-Paket verschwinden
- kopierte Medien werden nach dem Export noch einmal per SHA-256 verifiziert
- Exportzusammenfassung enthält media_references und missing_media
- Importformat:
- unverändert cw-blog-project-demo Version 1
- bestehende Projektvorlagen bleiben kompatibel
- keine Datenbankmigration erforderlich
Kompatibilität
- CW 3.0.0-alpha5 oder neuer
- PHP 8.2 oder neuer
- Status:
- Alpha / Preview
CW ≥ 3.0.0-alpha5 PHP ≥ 8.2.0
v0.3.8-alpha8
13.08.2026
Stable
Version 0.3.8-alpha8
Search-Foundation-Integration.
- Neu / geändert:
- eigener Search-Provider für veröffentlichte Blog- und Newsbeiträge
- Titel, Auszug, Inhalt, Kategorie, URL und visuelle Metadaten werden an die CW Search Foundation geliefert
- vorhandenes Open-Graph-Bild wird automatisch als Suchbild bevorzugt
- Fallback auf eigenes Hero-Bild und anschließend Beitragsbild
- ohne Bild greift das zentrale Blog-&-News-Defaulticon der Icon Library Foundation
- Suchlogik, Ranking, Fuzzy-Matching, Filter und Pagination bleiben vollständig im CW Core
- bestehender Blog-Editor und Editor Foundation 0.14 bleiben unverändert nutzbar
Kompatibilität
- benötigt CW 3.0.0-alpha5 oder neuer
- PHP 8.2 oder neuer
- Datenbank:
- keine Änderung
- keine Migration erforderlich
- Status:
- Alpha / Preview
CW ≥ 3.0.0-alpha5 PHP ≥ 8.2.0
v0.3.8-alpha7
12.08.2026
Stable
Version 0.3.8-alpha7
Editor-Foundation-0.14-Release.
- Neu / geändert:
- Blog-Quelltexteditor an den zentralen cw-editor-* Skin der CW Editor Foundation 0.14 angeglichen
- Editor-Kopf, Toolbar, Menüs, Codefläche, Zeilennummern, Footer und Größenmodi verwenden die gemeinsame Foundation-Struktur
- Formatter-Runtime wird zentral über CW geladen
- Prettier 3.9.6 und die zentralen Formatter-Einstellungen stehen für HTML, CSS und JavaScript zur Verfügung
- JS Beautify bleibt als kompatibler Fallback erhalten
- globale Admin-Theme-Konflikte mit Syntax-pre/code-Flächen werden vom CW Core abgefangen
- Maximalansicht und Editorstatus auf die gemeinsamen Foundation-Klassen umgestellt
- Blog-spezifische Prüfregeln und fachliche Funktionen bleiben weiterhin im Modul
Kompatibilität
- benötigt CW 3.0.0-alpha4 oder neuer
- PHP 8.2 oder neuer
- Datenbank:
- keine Änderung
- keine Migration erforderlich
- Status:
- Alpha / Preview
CW ≥ 3.0.0-alpha4 PHP ≥ 8.2.0
v0.3.8-alpha6
12.08.2026
Stable
Version 0.3.8-alpha6
Editor-Foundation-Release.
- Neu / geändert:
- Der Blog-Quelltexteditor verwendet jetzt die gemeinsame CW Editor Foundation als verbindlichen Editor-Core.
- Gemeinsame Foundation-Assets für Editor-Shell, Profile, Sprachhervorhebung, Asset-Werkzeuge und Preview werden direkt aus CW geladen.
- HTML-, CSS- und JavaScript-Bereiche verwenden definierte Blog-Profile der Editor Foundation.
- Größenmodi Normal, Groß und Maximal sind an die zentrale Foundation angebunden.
- Editor-Menüs und Popover verwenden den gemeinsamen CW-Controller.
- Syntaxhervorhebung, Suche, History, Formatierung und weitere Grundfunktionen werden nicht mehr parallel im Blogmodul gepflegt.
- Blog-spezifische Prüfregeln und fachliche Funktionen bleiben bewusst im Modul.
- Aktiver UI-Tab und ausgewählter Inhaltsbereich bleiben nach dem Speichern erhalten.
- Modulschutzdatei .htaccess ergänzt.
Kompatibilität
- Benötigt CW 3.0.0-alpha3 oder neuer, da dort die gemeinsame Editor Foundation 0.12.1 und die benötigten Editor-/Preview-Assets enthalten sind.
- PHP 8.2 oder neuer.
- Datenbank:
- Keine Änderung.
- Keine Migration erforderlich.
- Status:
- Alpha / Preview
CW ≥ 3.0.0-alpha3 PHP ≥ 8.2.0
v0.3.8-alpha5
11.08.2026
Stable
Version 0.3.8-alpha5
Open-Graph-/Social-Image-Fix.
Behoben
- Das im Beitrag gespeicherte Open-Graph-Bild wurde auf der öffentlichen
- Beitragsroute nicht an den Projekt-Header weitergereicht. Dadurch fehlte
- der og:image-Meta-Tag trotz korrekt gepflegtem Social-Media-Bild.
- Open-Graph-Bilder werden jetzt als absolute URL ausgegeben. Das ist für
- externe Crawler und Social-Media-Plattformen zuverlässiger als relative
- Projektpfade.
- Fallback-Reihenfolge für Social-Bilder:
- 1. explizites Open-Graph-Bild
- 2. eigenes Hero-Bild, wenn Hero-Modus = custom
- 3. Beitragsbild / featured_image
- Die Backend-Vorschau nutzt dieselbe Bildauflösung wie das öffentliche
- Frontend.
- Datenbank:
- Keine Änderung.
- Keine Migration erforderlich.
- Voraussetzungen:
- CW 3.0.0-alpha1 oder neuer
- PHP 8.2 oder neuer
CW ≥ 3.0.0-alpha1 PHP ≥ 8.2.0
v0.3.8-alpha4
09.08.2026
Stable
Version 0.3.8-alpha4
Vierter Alpha-Stand des CW Blog & News Moduls.
- Schwerpunkt:
- Beitragsbild und Bild im Beitragskopf sauber trennen
- Beitragsbild standardmäßig automatisch im Beitragskopf verwenden
- optional eigenes Herobild pro Beitrag
- Bildfokus für unterschiedliche Seitenverhältnisse festlegen
Neu
- Neue Einstellung "Bild im Beitrag":
- Beitragsbild verwenden
- Eigenes Bild für den Beitragskopf
- Kein Bild
- Das vorhandene Beitragsbild bleibt weiterhin das Bild für
- Blogübersicht und Startseiten-Teaser.
- Standardmäßig wird dasselbe Bild automatisch auch für den
- großen Beitragskopf verwendet.
- Optional kann für den Beitragskopf ein separates Bild hinterlegt
- werden.
- Horizontaler Bildfokus von 0 bis 100 Prozent.
- Vertikaler Bildfokus von 0 bis 100 Prozent.
- Bestehende Beiträge erhalten automatisch:
- Bild im Beitrag = Beitragsbild verwenden
- Fokus X = 50
- Fokus Y = 50
- Projekt-Demo / Export:
- Hero-Einstellungen werden beim Export und Import berücksichtigt.
- Separate Hero-Bilder werden wie Beitrags- und Open-Graph-Bilder
- portabel mitgeführt.
- Datenbank:
- Neue Felder in blog_posts:
- hero_image_mode
- hero_image
- hero_focus_x
- hero_focus_y
Migration
- 006-post-hero-image
- Keine bestehenden Beitragsdaten werden überschrieben.
- Voraussetzungen:
- CW 3.0.0-alpha1 oder neuer
- PHP 8.2 oder neuer
- PDO SQLite
CW ≥ 3.0.0-alpha1 PHP ≥ 8.2.0
v0.3.8-alpha3
09.08.2026
Stable
Version 0.3.8-alpha3
Bugfix-Release für das Ersetzen und Migrieren von Beitragsbereichen.
Behoben
- Projekt-Demo-Importe können vorhandene Beitragsbereiche jetzt sicher ersetzen.
- UNIQUE-Fehler bei bereits vorhandenen Ankern wurde behoben:
- blog_post_sections.post_id + blog_post_sections.anchor_name
- Alte, nicht mehr benötigte Bereiche werden vor dem Einfügen neuer Bereiche entfernt.
- Weiterverwendete Anker werden während des Speichervorgangs temporär freigestellt.
- Auch das Umbenennen oder Tauschen vorhandener Anker funktioniert dadurch zuverlässig.
- Bei einem Fehler bleibt der bisherige Stand durch die bestehende Transaktion erhalten.
- Weiterhin enthalten:
- Media-Fix aus 0.3.8-alpha2.
- Korrekte Auslieferung importierter Blogbilder.
- Backend-sichere Ermittlung des öffentlichen CW-Basispfads.
- Unterstützung für CW-Installationen in Unterverzeichnissen.
- Korrekte {{blog_media:...}}-Pfade bei Import und Export.
- Automatische Korrektur alter pauschaler Upload-Sperren.
- Schutz ausführbarer Dateien im Blog-Uploadordner.
- Directory Listing im Blog-Uploadordner bleibt deaktiviert.
- Inhaltsmigration:
- Projekt-Demos können vorhandene Beiträge gezielt nur inhaltlich aktualisieren.
- Mit preserve_existing_meta bleiben bestehende Beitragsdaten erhalten.
- Dabei können unter anderem unverändert bleiben:
- Titel
- Slug
- Teaser
- Beitragsbild
- Veröffentlichungsstatus
- Veröffentlichungsdatum
- SEO-Daten
- Social-Media-Daten
- benutzerdefiniertes CSS und JavaScript
- Einstellungen für interne Verlinkungen
- Damit können bestehende Beiträge in neue CW-Bloglayouts übernommen werden,
- ohne bereits gepflegte Metadaten oder den Top-Teaser zu überschreiben.
- Keine Datenbankmigration erforderlich.
- Voraussetzungen:
- CW 3.0.0-alpha1 oder neuer
- PHP 8.2 oder neuer
CW ≥ 3.0.0-alpha1 PHP ≥ 8.2.0
v0.3.8-alpha2
09.08.2026
Stable
Version 0.3.8-alpha2
Bugfix-Release für Blogmedien, Projekt-Demo-Importe und Inhaltsmigration.
Behoben
- Bilder aus Projekt-Demo-Importen werden jetzt korrekt ausgeliefert.
- Die bisherige pauschale Zugriffssperre in project/uploads/blog/ wurde korrigiert.
- Blogbilder bleiben öffentlich erreichbar.
- Ausführbare Dateien im Blog-Uploadordner bleiben weiterhin gesperrt.
- Directory Listing im Blog-Uploadordner bleibt deaktiviert.
- Demo-Medienpfade berücksichtigen jetzt den tatsächlichen CW-Basispfad.
- Bilder funktionieren damit auch bei CW-Installationen in Unterverzeichnissen.
- Der öffentliche CW-Basispfad wird nun auch bei Importen aus dem Backend sicher ermittelt.
- Der Fehler "Call to undefined function cw_base_path()" beim Projekt-Demo-Import wurde behoben.
- {{blog_media:...}}-Platzhalter werden beim Import in korrekte öffentliche Bildpfade umgewandelt.
- Exportierte Projekt-Demos bleiben portabel.
- Demo-Medien werden auf unterstützte Bildformate begrenzt.
- Bestehende alte Blog-Upload-Sperren werden automatisch erkannt und korrigiert.
Neu
- Projekt-Demos können vorhandene Beiträge jetzt gezielt nur inhaltlich aktualisieren.
- Mit preserve_existing_meta bleiben vorhandene Beitragsdaten beim Inhaltsimport erhalten.
- Dabei bleiben unter anderem unverändert:
- Titel
- Slug
- Teaser
- Beitragsbild
- Veröffentlichungsstatus
- Veröffentlichungsdatum
- SEO-Daten
- Social-Media-Daten
- benutzerdefiniertes CSS und JavaScript
- Einstellungen für interne Verlinkungen
- Damit können bestehende Beiträge aus älteren Projekten oder CMS-Systemen in das neue
- CW-Bloglayout übernommen werden, ohne bereits gepflegte Beitragsmetadaten zu überschreiben.
- Keine Datenbankmigration erforderlich.
- Voraussetzungen:
- CW 3.0.0-alpha1 oder neuer
- PHP 8.2 oder neuer
CW ≥ 3.0.0-alpha1 PHP ≥ 8.2.0