- Admin guide: RBAC roles, role-based dashboard, plugin types (content/system) - CodePress developer guide: plugin types, admin plugin API, SCSS compilation, asset serving - Theme developer guide: SCSS sole CSS source, css_compiled read-only, guide layout - Content manager guide: layout selection from theme.json, plugin order in frontmatter - Both NL and EN updated with identical structure - 35 files updated
2.1 KiB
2.1 KiB
Plugins
Plugin types
CodePress kent twee soorten plugins, bepaald door het type veld in plugin.json:
- Content plugins (
type: "content") — Verschijnen in de sidebar en in de plugin selectie op content-edit pagina's. Bieden sidebar content viagetSidebarContent(). - Systeem plugins (
type: "system") — Worden geladen door PluginManager maar verschijnen NIET in de sidebar. Bieden functionaliteit via admin menu, routes en de CMSAPI. Geregistreerd viagetAdminMenu()engetAdminRoutes().
Bij afwezigheid van een type veld wordt content aangenomen.
Essentiële plugins
Essentiële plugins zijn gedefinieerd in getProtectedPlugins() in public/admin.php. Huidige essentiële plugin: Navigation.
Deze plugins:
- Kunnen NIET worden gedeactiveerd
- Kunnen NIET worden bewerkt
- Kunnen NIET worden verwijderd
Op de plugins pagina krijgen ze een Essentieel badge i.p.v. de actieknoppen.
Plugins beheren
- Activeren/Deactiveren — Plugin aan/uit zetten (niet voor essentiële plugins)
- Bewerken — Plugin code aanpassen in CodeMirror (niet voor essentiële plugins)
- Configuratie — Plugin instellingen bewerken
- Verwijderen — Plugin map verwijderen (niet voor essentiële plugins)
De admin plugins pagina toont een Content of Systeem badge per plugin.
Nieuwe plugin aanmaken
- Ga naar Plugins → Nieuwe plugin
- Geef naam op (bijv.
MijnPlugin) — dit wordt de mapnaam - Kies het type: Content of Systeem
- Het bestand
MijnPlugin.phpwordt aangemaakt (NIETplugin.php) - Bewerk de plugin code in CodeMirror
- Activeer de plugin
Plugin bestandsnaam
Plugin PHP bestanden heten <PluginName>.php (bijv. Navigation.php, HTMLBlock.php). PluginManager laadt $pluginDir . '/' . $pluginName . '.php'.
Plugin CSS
- Content en systeem plugins kunnen eigen CSS hebben in
assets/scss/enassets/css/ - Plugin CSS wordt automatisch geladen ná theme CSS (in
base.twig), zodat thema's plugin styling kunnen overschrijven - Plugin assets worden geserveerd via
cms/router.phpop URL/plugins/<Name>/assets/...