# Navigation Plugin Essentiële content plugin die navigatie toont voor handleidingen en content in de sidebar. ## Plugin type **Content** plugin. De plugin-output volgt de geselecteerde **content taal** (via `CMSAPI::getPluginTranslations()` met `site.php`). ## Bestandsstructuur ``` Navigation/ ├── Navigation.php # Hoofd plugin class ├── plugin.json # Plugin metadata + instellingen ├── README.md # Dit bestand ├── assets/ # CSS/SCSS voor navigatie │ ├── css/navigation.css │ └── scss/navigation.scss └── language/ # Vertalingen ├── nl/site.php # Nederlandse front-end labels └── en/site.php # Engelse front-end labels ``` ## Functies - **Content navigatie**: Bouwt een sidebar navigatie uit de content-mapstructuur - **Handleiding navigatie**: Bouwt een sidebar navigatie uit de guide-mapstructuur - Detecteert automatisch of de huidige pagina een handleiding of content pagina is - Toont mappen (met kinderen) en bestanden (.md, .php, .html) - Strip taal-prefixen uit bestandsnamen (bijv. `nl.pagina.md` → `Pagina`) ## Instellingen Deze plugin heeft geen instelbare configuratie (`hasConfig: false`). Wel levert hij een CSS-URL via `getCssUrl()`. ## Taal support De plugin-output bestaat voornamelijk uit bestands- en mapnamen (die uit de content zelf komen), dus er zijn weinig te vertalen UI-strings. De `language//site.php` bestanden bevatten momenteel alleen `plugin_title` voor uniformiteit met de andere plugins en toekomstige uitbreiding. De plugin gebruikt `CMSAPI::getPluginTranslations('Navigation')` om labels op te halen. Fallback chain: 1. Geselecteerde content taal 2. Plugin `default_language` (`nl`) 3. Lege array (sleutel wordt ongewijzigd getoond) ## Beschermd Deze plugin is **protected**: hardcoded in `public/admin.php` (`getProtectedPlugins()`) en kan niet worden uitgeschakeld, verwijderd of bewerkt via de admin interface.