- Thema editor (thema's net zo bewerkbaar maken als plugins): bestandsbrowser zijbalk, nieuw bestand, uploaden, verwijderen, verplaatsen, SCSS compileren vanuit editor, thema activeren/ verwijderen, nieuw thema met basis-kopie, uniforme thema-structuur - Content editor (content consistent met plugins en thema's): bestandsbrowser zijbalk naast bestaande lijst weergave, nieuw bestand/map, uploaden, verwijderen, verplaatsen, mappen beheer, layout/plugins selectie, git/backup integratie in editor zijbalk - Uniformiteit: scanEditorFiles() unified scanner (scanPluginFiles/scanThemeFiles/scanContentFiles als dunne wrappers) - Media invoegen in editor: ?theme= scope voor media-list endpoint - Bug fix: thema-naam niet overgenomen bij kopiëren - title in theme.json wordt overschreven met nieuwe themanaam - Handleidingen bijgewerkt (thema-beheer.md + content-beheer.md NL/EN) - Release notes: docs/release-notes/v2.6.2.md - Pentest 30/30, WCAG 25/25
4.1 KiB
Content beheer
CodePress biedt twee weergaven voor content-beheer:
- Lijst weergave (
/admin/content) — klassieke tabel met filter, upload, nieuwe map/bestand per map - Content editor (
/admin/content-files) — bestandsbrowser zijbalk + CodeMirror editor (uniform met plugin/theme-editors)
Beide werken naast elkaarlijk en gebruiken dezelfde content-map. De content-editor biedt dezelfde functionaliteit als de lijst weergave, maar dan met een geneste bestandsboom zijbalk zoals de plugin- en thema-editors — voor consistente editor-ervaring.
Content editor (content-files)
Bestandsbrowser zijbalk
- Toont de geneste bestandsboom van
content/ - Verborgen mappen (
.bak,.git) en dotfiles worden overgeslagen - Klik op een bestand om het te openen in de CodeMirror editor
- Mappen die het actieve bestand bevatten zijn automatisch uitgeklapt
- Per map staan actie-knoppen: nieuw bestand, nieuwe map, hernoemen, verwijderen
Bewerkbare bestandstypen
.md (Markdown), .php (PHP), .html (HTML) — consistent met de bestaande content-edit pagina.
Nieuw bestand aanmaken
- Klik op Nieuw bestand (bovenaan of per map in de zijbalk)
- Geef een pad op binnen content (bijv.
nl.paginaofblog/nl.post) - Kies het bestandstype (Markdown/PHP/HTML)
- Submappen worden automatisch aangemaakt
- Frontmatter met
layout,author_name,author_email,createdwordt automatisch gegenereerd
Bestand uploaden
- Klik op Upload om bestanden naar
content/te uploaden - Toegestaan: afbeeldingen, video, audio, PDF, ZIP, office docs, CSS, SCSS, JS, JSON, HTML, MD
- Path-traversal bescherming: doelmap moet binnen
content/blijven
Bestand verplaatsen / verwijderen
- In de bestandsboom heeft elk bestand een verplaats-knop (pijlen-icoon) en een verwijder-knop (prullenbak)
- Verplaatsen: kies een doelmap uit de dropdown met alle mappen in content
- Verwijderen: met bevestiging
Mappen beheer
- Nieuwe map: per map in de zijbalk of bovenaan
- Map hernoemen: potlood-icoon per map
- Map verwijderen: prullenbak-icoon per map (alleen lege mappen)
Layout selectie
Op de editor-pagina kun je de layout kiezen uit de layouts gedefinieerd in theme.json (template mapping). De geselecteerde layout wordt opgeslagen in de frontmatter layout: key.
Plugins op pagina's
- Content plugins (uit
plugin.jsonmettype: "content") verschijnen in de plugin selectie - Kies welke plugins op de pagina draaien
- De plugin selectie wordt opgeslagen in de frontmatter
plugins:key
Git / Backup integratie (Fase 5)
Bovenaan de content-editor staan backup- en git-acties:
- Git init: initialiseert een git repository in
content/(als er nog geen is) - Commit: committed alle niet-committed wijzigingen (alleen als er een git repo is en er wijzigingen zijn)
- Backup: link naar de backup-pagina (
/admin/content-backup) voor ZIP backup/restore - De git status badge toont de huidige branch, of er niet-committed wijzigingen zijn, en de laatste commit
Frontmatter
De editor werkt de frontmatter live bij bij wijzigingen van layout of plugin selectie:
---
layout: left_sidebar
author_name: Admin
author_email: admin@example.com
created: 2026-08-19 10:30:25
plugins: HTMLBlock, Navigation
---
# Pagina titel
Content...
Lijst weergave (content)
Bestanden beheren
- Nieuwe map — Mappen structuur aanmaken
- Nieuw bestand — Pagina aanmaken (
.md,.php,.html) - Bewerken — Bestaande content wijzigen in CodeMirror editor
- Hernoemen — Bestands- of mapnamen aanpassen
- Verplaatsen — Content verplaatsen naar andere map
- Verwijderen — Content verwijderen
- Map hernoemen — Map naam wijzigen
Editor (content-edit)
- CodeMirror met syntax highlighting (Markdown, PHP, HTML)
- Toolbar voor snel Markdown invoeren
- Sneltoetsen: Ctrl+S (opslaan), Ctrl+N (nieuw)
Frontmatter
De editor werkt de frontmatter live bij bij wijzigingen van layout of plugin selectie:
---
layout: left_sidebar
plugins:
- HTMLBlock
- Navigation
---
# Pagina titel
Content...