Files
CodePress/guide/nl/admin-beheerder/content-beheer.md
T
E.Noorlander 6f18a13f90 Fix: /admin/content is nu boom-editor + image-grootte knop + custom syntax
- /admin/content is nu de boom-editor (plugin-file-tree structuur),
  consistent met plugin- en thema-editors. Oude tabelweergave verhuisd
  naar /admin/content-list, bereikbaar via 'Boom weergave'/'Lijst
  weergave' knoppen. /admin/content-files redirect naar /admin/content.
- Image-grootte knop in markdown editor-toolbar: selecteer ![alt](url),
  klik knop, breedte/hoogte dialog, {:width=... height=...} syntax
  toevoegen/vervangen. Bestaande waarden worden in prompts getoond.
- Custom-grootte syntax {:width=...} nu ook correct herschreven naar
  /-media/ endpoint (was alleen gewone ![alt](url) herschreven).
- Handleidingen bijgewerkt (content-beheer.md NL+EN: boom/lijst
  weergave uitleg + image-grootte + images in content sectie)
- Release notes v2.6.2 bijgewerkt
- Pentest 30/30, WCAG 25/25
2026-08-19 12:15:56 +00:00

5.1 KiB

Content beheer

CodePress biedt twee weergaven voor content-beheer:

  1. Boom weergave (/admin/content) — standaard, bestandsbrowser zijbalk + CodeMirror editor (uniform met plugin/theme-editors)
  2. Lijst weergave (/admin/content-list) — klassieke tabel met filter, upload, nieuwe map/bestand per map

Beide werken naast elkaar en gebruiken dezelfde content-map. Wissel tussen de weergaven via de "Lijst weergave"/"Boom weergave" knoppen rechtsboven. De boom weergave biedt dezelfde functionaliteit als de lijst weergave, maar dan met een geneste bestandsboom zijbalk zoals de plugin- en thema-editors — voor consistente editor-ervaring.

Boom weergave (content)

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.

Image-grootte instellen (Markdown)

In de markdown editor-toolbar staat een "Afbeelding grootte" knop (expand-icoon):

  1. Selecteer een afbeelding in de editor in markdown formaat ![alt](url)
  2. Klik op de "Afbeelding grootte" knop
  3. Vul breedte en/of hoogte in (px of %, leeg = niet instellen)
  4. De {:width=... height=...} syntax wordt aan de afbeelding toegevoegd of vervangen

Voorbeeld:

![logo](/content/_images/logo.png){:width="200" height="100"}

Bestaande {:width=...} waarden worden in de prompts getoond. De grootte-attributen worden in de frontend als width/height HTML-attributen op de <img> tag gezet.

Images in content

Images in content/ worden via de /-media/ endpoint geserveerd (content/ staat buiten de webroot). De markdown syntax ![alt](url) met lokale URLs (relatief zoals image.jpg, of absoluut zoals /content/_images/image.jpg) wordt automatisch herschreven naar /-media/.... Externe URLs (https://...) worden ongewijzigd gelaten.

Nieuw bestand aanmaken

  • Klik op Nieuw bestand (bovenaan of per map in de zijbalk)
  • Geef een pad op binnen content (bijv. nl.pagina of blog/nl.post)
  • Kies het bestandstype (Markdown/PHP/HTML)
  • Submappen worden automatisch aangemaakt
  • Frontmatter met layout, author_name, author_email, created wordt 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.json met type: "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...