Réglages des plugins
Chaque plugin activé peut déclarer une page de réglages accessible à . La sidebar Réglages liste chacune de ces pages dans une bande d'onglets aux côtés de Général + Performance.
Chaque plugin activé peut déclarer une page de réglages accessible à /settings/plugin/<id>. La sidebar Réglages liste chacune de ces pages dans une bande d'onglets aux côtés de Général + Performance.
Où la trouver
Les plugins qui livrent une page de réglages affichent un bouton Settings sur leur carte dans l'onglet Plugins. Cliquer dessus navigue vers /settings/plugin/<id>.
Vous pouvez aussi naviguer directement via la sidebar Réglages → onglets Plugin (un onglet par plugin avec réglages).
Ce qu'il y a sur une page de réglages plugin
Par plugin — chaque auteur de plugin décide son propre formulaire. Convention :
- Onglets en haut pour les sections de la config du plugin (ex. flexweg-rss a les onglets Feed du site / Feeds par catégorie)
- Champs de formulaire en dessous avec des défauts raisonnables
- Bouton Save en bas — patche
settings.pluginConfigs.<id>dans le backend - Bouton Force regenerate quand applicable — relance le pass de travail complet du plugin (re-upload des fichiers, re-render des cartes, etc.)
Le framework garantit :
- Indicateur d'auto-save — affiche "Saving…" → "Saved" près du bouton Save
- Le formulaire se ré-hydrate quand une sauvegarde externe arrive (ex. un autre admin sauvegarde dans un autre onglet)
- Bouton Reset to defaults — vide
pluginConfigs.<id>, restaure le formulaire àmanifest.defaultConfig
Persistance
settings/site.pluginConfigs[<plugin-id>] est l'emplacement unique. Le merge fait par PluginSettingsRoute est {...manifest.defaultConfig, ...storedConfig} — donc :
- Les valeurs par défaut sont toujours disponibles
- Les valeurs stockées (modifiées par l'utilisateur) overrident les défauts
- Ajouter une nouvelle clé à
defaultConfigne casse pas les anciens stored configs (la clé apparaît avec sa valeur par défaut jusqu'à ce qu'elle soit explicitement modifiée)
Préservation à la désinstallation
Quand vous désinstallez un plugin, sa config dans pluginConfigs.<id> reste en base par défaut. C'est intentionnel : si vous le réinstallez plus tard, vos réglages sont restaurés.
Pour purger délibérément la config : utilisez le bouton Reset to defaults avant de désinstaller, ou éditez manuellement le document settings/site dans Firestore / SQLite.
Force regenerate
Quand un plugin a une logique de pass de régénération (sitemaps, RSS, archives, recherche), sa page de réglages expose un bouton Force regenerate qui :
- Sauvegarde le draft actuel (sinon le pass utiliserait la config pré-edit)
- Lance le pass de régénération du plugin
- Affiche les logs en bas
- Persiste tout bookkeeping mis à jour par le pass (ex.
lastPublishedPath)
C'est l'équivalent du Regenerate site → depuis le menu Thèmes — la page de réglages l'expose en plus pour confort.
Page de réglages des thèmes
Les thèmes ont une convention similaire (ThemeManifest.settings), mais routée à /theme-settings (pas sous /settings/plugin/). La sidebar montre une entrée Theme settings quand le thème actif a settings déclaré.
Voir Page de réglages de thème pour les auteurs de thèmes.
i18n des plugins
Chaque plugin peut déclarer un bundle i18n dans PluginManifest.i18n: { en, fr, ... }. Le namespace i18next est l'id du plugin. Dans le formulaire de réglages, le plugin appelle useTranslation('<plugin-id>') et a accès à toutes les clés de son bundle dans la langue courante de l'admin.
C'est pourquoi les pages de réglages des plugins intégrés sont automatiquement traduites en 7 langues. Les plugins externes peuvent ne fournir qu'EN ; les autres langues affichent les clés EN comme fallback.