3.2 KiB
3.2 KiB
Plugins
Plugin types
Er zijn twee soorten plugins:
- Systeem plugins (blauwe badge) - Beheren CMS-functionaliteit zoals Dashboard, Logs en Statistieken
- Content plugins (groene badge) - Tonen content in de front-end zoals HTMLBlock en Navigation
Essentiële plugins
Essentiële plugins (met een schild-icoon) kunnen niet worden bewerkt, gedeactiveerd of verwijderd. Dit geldt bijvoorbeeld voor de Navigation plugin.
Plugins beheren
- Activeren/Deactiveren - Plugins aan/uit
- Bewerken - Plugin code aanpassen
- Configuratie - Plugin instellingen (alleen bij plugins met een Config-knop)
- Verwijderen - Plugin verwijderen
Alleen actieve plugins worden getoond in de admin sidebar.
Nieuwe plugin
- Ga naar Plugins → Nieuwe plugin
- Geef naam op (bijv.
MijnPlugin) - Bewerk het PHP-bestand
- Activeer de plugin
Nieuwe plugins zijn standaard content-plugins. Wil je een systeem-plugin maken, voeg dan "type": "system" toe aan plugin.json.
Plugin editor
Via Bewerken (potlood-icoon) in het plugin-overzicht open je de plugin-editor (/admin/plugins-edit?plugin=<naam>). Deze werkt hetzelfde als de content- en thema-editors.
Bestandsbrowser zijbalk
- Toont de geneste bestandsboom van de plugin, met een klikbare plugin root bovenaan
- Klik op een bestand om het te openen in de CodeMirror editor
- Klik op een map om het map detail paneel rechts te openen (nieuw bestand, nieuwe map, uploaden, verwijderen)
- Mappen die het actieve bestand bevatten zijn automatisch uitgeklapt
- Per map staan actie-knoppen: nieuw bestand, nieuwe map — opereren op de geselecteerde map
- Per bestand staan actie-knoppen: hernoemen/verplaatsen (potlood), verwijderen (prullenbak) — verschijnen bij hover
Bestanden verslepen (drag-and-drop)
- Sleep een bestand of map naar een andere map om het te verplaatsen
- Tijdens het slepen worden geldige doel-mappen highlight getoond
- De verplaatsing gebeurt via een AJAX-call — de pagina herlaadt automatisch na succes
- Beschermde plugins (zoals Navigation) kunnen niet bewerkt/verplaatst worden
Bewerkbare bestandstypen
.php, .json, .md, .html, .css, .scss, .js
Nieuw bestand / nieuwe map aanmaken
- Selecteer de doelmap in de zijbalk (klik op de mapnaam), of gebruik de root
- Klik op Nieuw bestand of Nieuwe map (in het map-detail paneel of bovenaan)
- Bij nieuw bestand: geef een pad op binnen de plugin (bijv.
helper.phpofassets/css/extra.css) - Submappen worden automatisch aangemaakt
Bestand verplaatsen / verwijderen
- Verplaatsen: sleep het bestand naar een andere map (drag-and-drop), of klik op het potlood-icoon
- Verwijderen: klik op de prullenbak-knop naast het bestand in de zijbalk, met bevestiging
Mappen beheer
- Klik op een map in de zijbalk om het map-detail paneel rechts te openen
- Nieuw bestand / Nieuwe map / Uploaden in deze map: gebruik de knoppen in het map-detail paneel
- Map verwijderen: verwijder-knop in het map-detail paneel (alleen lege mappen)
Beveiliging
- Beschermde plugins (Navigation) kunnen niet bewerkt worden
- Alle acties vereisen CSRF token
- Path-traversal bescherming via
realpath()+ prefix-check op de plugin-map