Willkommen im Content CMS
Das Content CMS ist die zentrale Oberflaeche fuer Webseiten-Inhalte in dbXapp. Hier verwalten Sie Ordner, Seiten, Medien, Rechte und — bei mehreren Sprachen — die Uebersetzungen.
Einstieg: ?dbx_modul=dbxContent_admin&dbx_run1=cms
Die Oberflaeche auf einen Blick
- Links: Hierarchischer Baum (Ordner und Seiten). Klick waehlt den Eintrag.
- Mitte: Titel, Permalink, Status, Inhalt, Seitenmodule.
- Rechts: Hero-Bild, Galerie, Inline-Medien, Uebersetzungs-Einstellungen.
- Oben: Sprach-Tabs (z. B. DE*, EN) — Stern = Master-Sprache.
Alle Buttons der CMS-Kopfzeile
| Button | Funktion | Wichtiger Hinweis |
|---|---|---|
| Content Tree ein-/ausklappen (X/Pfeil) | Blendet den linken Seitenbaum ein oder aus. | Aendert keine Daten. |
| Speichern (Diskette) | Speichert die aktuell bearbeitete Seite beziehungsweise den geoeffneten Ordner samt Einstellungen. | Alternativ Strg+S. Der Statuspunkt wechselt danach auf „Gespeichert“. |
| Uebersetzen (Sprachen) | Uebertraegt die gewaehlte Seite oder den Ordner aus der Master-Sprache in weitere Sprachen. | Nur in der Master-Sprache sichtbar. |
| Auto-Sync (Kettenglied) | Verknuepft manuell abgekoppelte Sprachversionen wieder mit dem Master. | Kuenftige Master-Aenderungen koennen die Zielsprachen wieder ueberschreiben. |
| Loeschen (Papierkorb) | Loescht nach Bestaetigung die aktuelle Seite beziehungsweise den geoeffneten Ordner. | Bei mehreren Sprachen erscheint eine Auswahl der zu loeschenden Sprachversionen. |
| Vorschau (Auge) | Oeffnet die aktuelle Seite in der Frontend-Vorschau. | Ungespeicherte Aenderungen sind dort noch nicht enthalten. |
| Neue Seite (gruener Button mit Datei-Plus) | Legt im gewaehlten Ordner eine neue Seite mit Standardinhalt an und oeffnet sie direkt. | Vorher im Baum den gewuenschten Zielordner waehlen. |
| Seite duplizieren (zwei Dateien) | Erstellt im selben Ordner eine neue, eigenstaendige Kopie der aktuell gewaehlten Seite. | Erst speichern. Der Permalink wird automatisch mit -kopie, -kopie-2 usw. eindeutig gemacht. |
| Neu laden (Kreispfeil) | Laedt Baum und aktuellen Datenstand erneut vom Server. | Ungespeicherte Aenderungen koennen dabei verloren gehen. |
Gespeichert/Ungespeichert ist kein Button, sondern die Zustandsanzeige fuer Aenderungen im Formular oder Editor.
Buttons im Seitenbaum und im Ordnerformular
| Button | Funktion |
|---|---|
| Neuer Ordner (Ordner-Plus) | Oeffnet ein leeres Ordnerformular; der zuvor gewaehlte Ordner wird als Zuordnung vorgeschlagen. |
| Neue Seite im Ordner (Datei-Plus) | Entspricht dem gruenen Button „Neue Seite“ und verwendet den aktuell gewaehlten Ordner. |
| Suche | Filtert den Baum nach Seiten-/Ordnernamen; eine eingegebene numerische ID kann gezielt gefunden werden. |
| Sprach-Tab (DE*, EN, ...) | Wechselt den CMS-Datenbestand in die gewaehlte Sprache. Der Stern kennzeichnet die Master-Sprache. |
| Ordner auf-/zuklappen (Pfeil) | Zeigt oder verbirgt die untergeordneten Eintraege. |
| Ordner bearbeiten (Stift) | Oeffnet Name, Zuordnung, Template und Leserechte des Ordners. |
| Schliessen (X im Ordnerformular) | Schliesst das Ordnerformular und zeigt wieder den Seiteneditor. |
| Ordner loeschen | Loescht einen leeren Ordner nach Bestaetigung. |
| Ordner speichern | Speichert alle Felder des Ordnerformulars. |
Buttons fuer Hero, Galerie und Medien im Text
| Button | Funktion |
|---|---|
| Bereich auf-/zuklappen (Pfeil an Hero, Gallery oder Im Text) | Blendet die Einstellungen des jeweiligen Bereichs ein oder aus. |
| Hero – Auswahl | Oeffnet den Medienbrowser und waehlt genau ein Hero-Bild oder -Video fuer die Seite. |
| Hero – Speichern | Speichert Hero-Medium und alle Hero-Einstellungen zusammen mit der Seite. |
| Gallery – Auswahl | Ordnet der Seite ein oder mehrere Medien fuer die Galerie zu. |
| Gallery – Speichern | Speichert Galerie-Einstellungen und die aktuelle Reihenfolge. |
| Im Text – Auswahl | Waehlt ein Medium aus dem Medienbrowser und fuegt es in den Editorinhalt ein. |
| Medium in Editor einfuegen (Bildsymbol am Medium) | Fuegt das bereits zugeordnete Medium an der aktuellen Cursorposition ein. |
| Zuordnung entfernen (Papierkorb am Medium) | Entfernt das Medium aus dieser Seite. Die Datei selbst bleibt in der Medienverwaltung erhalten. |
Galerie-Medien koennen per Drag-and-drop sortiert werden. Beim Duplizieren werden keine Bild- oder Videodateien doppelt gespeichert; die neue Seite erhaelt eigene aktive Eintraege in media_usage, die auf dieselben Medien zeigen.
Buttons im Inhaltseditor
| Button | Funktion |
|---|---|
| Quelltext | Wechselt zwischen visueller Bearbeitung und HTML-Quelltext. |
| Alles speichern | Speichert Seite, Editorinhalt und Seiteneinstellungen. |
| Textstil | Setzt Zeichenformatierungen wie fett, kursiv, unterstrichen oder durchgestrichen. |
| Aufzaehlung | Erstellt eine ungeordnete Liste. |
| Nummerierung | Erstellt eine geordnete Liste. |
| Ausruecken | Verringert die Einrueckung des aktuellen Absatzes oder Listeneintrags. |
| Einruecken | Erhoeht die Einrueckung des aktuellen Absatzes oder Listeneintrags. |
| Absatzformat | Waehlt Absatz, Ueberschrift oder ein anderes Blockformat. |
| Farbe (Pinsel) | Setzt Text- beziehungsweise Hintergrundfarbe. |
| Link | Erstellt oder bearbeitet einen Verweis. |
| Bild/Medienbrowser | Waehlt ein Bild aus der CMS-Medienverwaltung und fuegt es ein. |
| Modul | Fuegt einen dbXapp-Modulplatzhalter mit den benoetigten Parametern ein. |
| Bootstrap-Komponente | Fuegt vorbereitete Layout-Komponenten wie Karten oder Raster ein. |
| Video | Fuegt ein Video beziehungsweise einen Video-Link ein. |
| Trennlinie | Fuegt eine horizontale Trennlinie ein. |
| Marker | Fuegt einen dbXapp-Strukturmarker, zum Beispiel fuer Spalten oder Inhaltsbereiche, ein. |
| Rueckgaengig | Nimmt den letzten Bearbeitungsschritt zurueck. |
| Wiederholen | Stellt den zuletzt rueckgaengig gemachten Schritt wieder her. |
| Vollbild | Vergroessert den Editor auf die gesamte verfuegbare Flaeche. |
Alle Eingabefelder einer Seite
| Feld | Bedeutung |
|---|---|
| Titel | Sichtbarer Seitentitel und Bezeichnung im Seitenbaum. |
| Permalink | Eindeutiger URL-Pfad ohne Domain und ohne fuehrenden Slash, zum Beispiel leistungen/beratung. Beim Duplizieren wird er automatisch eindeutig erweitert. |
| Content-Template | Bestimmt den Rahmen und die Inhaltsbereiche der Seite. parent uebernimmt die Vorgabe des Ordners. |
| Status | Aktiv veroeffentlicht die Seite; Inaktiv haelt sie fuer normale Besucher verborgen. |
| Beschreibung | Kurzbeschreibung der Seite mit maximal 254 Zeichen; wird je nach Ausgabe auch fuer Teaser oder Metadaten verwendet. |
| Inhalt | Der grosse visuelle Editor fuer Texte, Links, Medien, Module und Layout-Komponenten. |
Die technischen Felder ID und Ordner-ID werden automatisch verwaltet und sind deshalb nicht als normale Eingabefelder sichtbar.
Alle Hero- und Galerie-Felder
| Feld | Bedeutung |
|---|---|
| Hero – Template | Legt fest, ob und wie das Hero-Medium ausgegeben wird. parent uebernimmt die Ordnereinstellung; none schaltet den Hero aus. |
| Hero – Medium | Wird ueber „Auswahl“ gesetzt; die Media-ID bleibt verborgen und wird automatisch verwaltet. |
| Hero – Abstand oben | Steuert den oberen Abstand. parent uebernimmt die Vorgabe des Ordners. |
| Hero – Hoehe | Steuert die Darstellungs-Hoehe des Hero-Bereichs; parent uebernimmt die Vorgabe. |
| Hero – Variante | Waehlt die Farb-/Overlay-Variante, zum Beispiel original, hell, dunkel oder monochrom. |
| Hero sticky | Bestimmt, ob der Hero beim Scrollen fixiert bleibt. parent uebernimmt die Ordnereinstellung. |
| Scroll-Ebene | Legt fest, ob der Hero beim Scrollen unter oder ueber dem Inhalt liegt. |
| Gallery – Overflow | Bestimmt die Darstellung bei vielen Medien, zum Beispiel Raster, Slider oder eine begrenzte Ansicht. |
| Gallery – Klick | Bestimmt die Aktion beim Anklicken eines Galerie-Mediums, zum Beispiel Lightbox, Link oder keine Aktion. |
Alle Eingabefelder eines Ordners
| Feld | Bedeutung |
|---|---|
| Name | Bezeichnung des Ordners im Seitenbaum und Grundlage fuer neue Permalinks. |
| Zuordnung | Waehlt den Elternordner. „Root / erste Ebene“ legt den Ordner ganz oben ab. |
| Content-Template | Standard-Template fuer untergeordnete Seiten. parent uebernimmt die hoehere Ebene. |
| Leserechte | Legt fest, welche Benutzergruppen Inhalte dieses Ordners lesen duerfen. parent uebernimmt die Rechte des Elternordners; * erlaubt alle. |
Weitere Auswahl- und Dialogfelder
- Baumsuche: schraenkt die sichtbaren Seiten und Ordner ein.
- Medien-Anzeige: filtert zugeordnete Medien nach Alle, Galerie, Hero, Im Text oder Shop.
- Medienordner/Upload-Ziel: bestimmt, aus welchem Medienordner angezeigt beziehungsweise in welchen Ordner hochgeladen wird.
- Dateiauswahl: waehlt eine oder mehrere lokale Dateien fuer den Upload.
- Externe Video-URL: nimmt eine unterstuetzte Video-URL, zum Beispiel YouTube, auf.
- Zielsprache aktivieren: legt im Uebersetzungsdialog fest, welche Sprachversionen erstellt oder aktualisiert werden.
- Gesamten Unterbaum inkl. Seiten: uebertraegt bei Ordnern auch alle enthaltenen Unterordner und Seiten.
Grundbegriffe
- Ordner — strukturiert den Baum (wie Verzeichnisse). Hat Leserechte und optional Hero.
- Seite — eigentlicher Inhalt mit Titel, Text, Permalink und Medien.
- Permalink — URL-Pfad der Seite (z. B.
leistungen/beratung). - Master-Sprache — fuehrende Sprache (meist DE). Aenderungen hier steuern Auto-Sync.
- Sprachversion — derselbe Inhalt in einer anderen Sprache, verknuepft ueber interne ID.
Neue Seite anlegen
- Im Baum den Zielordner anklicken.
- Button Neue Seite (gruen, Datei-Icon).
- Titel und Text im Editor bearbeiten.
- Speichern (Diskette oder Strg+S).
- Bei Master-Sprache: Dialog In andere Sprachen uebertragen oeffnet sich — auch beim Speichern bestehender Seiten, wenn EN/ES noch fehlen.
Bestehende Seite duplizieren
- Im Baum die zu kopierende Seite anklicken.
- Falls „Ungespeichert“ angezeigt wird, zuerst Speichern.
- Rechts neben dem gruenen Button „Neue Seite“ auf Seite duplizieren (zwei Dateien) klicken.
- Die neue Seite wird im selben Ordner angelegt und sofort im Editor geoeffnet.
Die Kopie erhaelt eine neue Seiten-ID, eine neue Sprachverknuepfung und eine neue Sortierposition. Titel, Status, SEO-Felder, Inhalt, Hero-/Galerie-Einstellungen und Medien bleiben erhalten. Der Permalink wird automatisch auf ...-kopiegesetzt; existiert dieser bereits, folgt ...-kopie-2usw.
media_usage-Zuordnungen zur neuen Seite; Inline-Medien werden aus dem kopierten Editorinhalt neu zugeordnet.Neuen Ordner anlegen
- Elternordner im Baum waehlen (oder Root).
- Neuer Ordner im Baum-Kontext oder ueber die Ordner-Ansicht.
- Name, Parent und Leserechte setzen → Speichern.
- Wie bei Seiten: Provision-Dialog fuer weitere Sprachen.
Seite oder Ordner bearbeiten
- Eintrag im Baum anklicken.
- Meta-Felder (Titel, Permalink, Status, Template) anpassen.
- Inhalt im Editor aendern — Module per Platzhalter
[modul=...]. - Medien rechts zuordnen (Hero, Galerie, Im Text).
- Speichern. Der Punkt „Gespeichert“ in der Kopfzeile zeigt ungespeicherte Aenderungen.
Medien
- Hero — grosses Kopfbild oben auf der Seite.
- Galerie — Bildergalerie unter dem Inhalt.
- Im Text — Bilder/Videos inline im Editor.
- Medien werden im Medienbrowser ausgewaehlt; Dateien bleiben im Bestand, auch wenn Sie die Verknuepfung loesen.
Mehrsprachigkeit — So funktioniert es
dbXapp trennt Inhalte pro Sprache in eigene Tabellen (content_de, content_en, …). Verknuepft sind sie ueber lng_uid.
Sprach-Tabs und Badges im Baum
- DE*, EN, … — Sprach-Tabs wechseln die Bearbeitungssprache.
- Badges am Baumeintrag: Master, auto, manual oder fehlend.
- Master (*) — nur hier: Uebertragen, Auto-Sync aktivieren, mehrsprachig Loeschen.
In andere Sprachen uebertragen (Provision)
- Seite oder Ordner in der Master-Sprache waehlen.
- Button Uebersetzen (Sprachen-Icon) in der Kopfzeile.
- Dialog: Zielsprachen aktivieren, Texte pruefen und ggf. anpassen.
- Uebernehmen — neue Sprachversionen werden angelegt (Seiten: inaktiv).
Bei Ordnern zusaetzlich: Checkbox Gesamten Unterbaum inkl. Seiten — uebertraegt alle Unterordner und Seiten in einem Schritt (Ordner zuerst, dann Seiten).
Auto-Sync beim Master-Speichern
Wenn Sie eine Seite oder einen Ordner in der Master-Sprache aktualisieren, werden alle verknuepften Slaves mit Status autoim Hintergrund synchronisiert. Sie sehen eine Meldung wie „2 Sprachversion(en) synchronisiert“.
- Texte werden uebersetzt (je nach Provider).
- Struktur (Template, Hero-Einstellungen, Sortierung) wird uebernommen.
- Status aktiv/inaktiv der Slave-Seite bleibt erhalten.
Fork — Manuelle Abweichung
Speichern Sie in einer Nicht-Master-Sprache, wird die Verknuepfung getrennt (manual). Die Meldung lautet: Sprachverknuepfung getrennt (manuell).
Ab dann uebernimmt der Master diese Sprache nicht mehr automatisch.
Auto-Sync wieder aktivieren
- In der Master-Sprache die Seite/Ordner waehlen.
- Button Auto-Sync (Link-Icon) in der Kopfzeile.
- Bestaetigen — alle verknuepften Slaves erhalten wieder
auto. - Naechster Master-Save synchronisiert erneut (ueberschreibt Slave-Inhalte).
Loeschen
Slave-Sprache: Einfache Bestaetigung — nur diese Sprachversion wird geloescht.
Master mit mehreren Sprachen: Dialog mit Checkboxen pro Sprache.
auto-Versionen sind vorausgewaehlt.manual-Versionen nicht — bewusst ankreuzen, wenn gewuenscht.- Ordner nur loeschbar, wenn keine Unterordner und keine Seiten enthalten sind (pro Sprache geprueft).
Uebersetzung konfigurieren (Admin)
Pfad: Admin → Content → Config oder direkt:
?dbx_modul=dbxContent_admin&dbx_run1=content&dbx_run2=config
| Provider | Bedeutung |
|---|---|
copy | Text unveraendert kopieren (Standard, kein API-Key) |
none | Uebersetzungsfelder leer lassen |
deepl | DeepL API — API-Key erforderlich |
openai | OpenAI Chat API — API-Key + Modell |
custom | Eigene Logik in dbx/modules/dbxContent/translate.php |
Bei API-Fehlern: Fallback auf Originaltext, Hinweis im CMS und Eintrag unter Admin → SysMsg (Status warning, About dbxContentTranslate).
Vorschau und Veroeffentlichung
- Vorschau (Auge-Icon) — oeffnet die Seite im Frontend.
- Status Aktiv/Inaktiv — nur aktive Seiten sind oeffentlich erreichbar.
- Neue Slave-Seiten starten als inaktiv — erst nach Pruefung auf aktiv stellen.
Cache
Nach dem Speichern wird der Content-Cache automatisch invalidiert. Gecacht werden nur Permalink-Aufrufe; dbxMenu und dbxHome sind im Seiten-Cache enthalten. Wenn Aenderungen live nicht sichtbar sind:
- Admin → Page-Cache pruefen / leeren.
- Seite erneut aufrufen (Hard-Reload im Browser).
Tastenkuerzel
- Strg + S — Speichern (Seite oder Ordner)
Haeufige Fragen
Warum fehlt EN im Baum?
Seite wurde nur in DE angelegt — Provision-Dialog ausfuehren oder Uebersetzen-Button nutzen.
Warum wird EN nicht mehr aktualisiert?
Slave wurde manuell gespeichert (Fork). Auto-Sync-Button nutzen oder EN erneut bearbeiten.
Hinweis zu Ordnern im Provision-Dialog?
Fehlende Ordner in EN/ES werden beim Uebernehmen automatisch aus der Master-Struktur angelegt (inkl. Elternordner). Im Dialog erscheint ein Hinweis statt eines Fehlers.
Uebersetzung klappt nicht?
Provider und API-Key in Modul-Config pruefen → SysMsg lesen.
Wo finde ich technische Details?
Entwickler-Doku: 04_DBXApp_CMS_Mehrsprachigkeit.md im Projekt.
Typischer Workflow (Mehrsprachige Website)
Hilfe-Button
Dieses Handbuch ist jederzeit ueber den Hilfe-Button (?) in der CMS-Kopfzeile erreichbar:
?dbx_modul=dbxContent&dbx_run1=help&topic=content