Mettre à jour l'admin

WordPress a des updates intégrées pour le cœur / les plugins / les thèmes. Flexweg CMS n'en a pas — vous compilez le nouveau admin vous-même (ou téléchargez une release), uploadez le nouveau sur

WordPress a des updates intégrées pour le cœur / les plugins / les thèmes. Flexweg CMS n'en a pas — vous compilez le nouveau admin vous-même (ou téléchargez une release), uploadez le nouveau dist/admin/ sur Flexweg, et le nouveau code est en ligne.

L'état utilisateur survit à l'upgrade parce qu'il est tout dans le backend (Firestore ou SQLite, plus les bundles externes déjà sur Flexweg) — pas bundlé avec le code admin.

Ce qui survit

  • Posts, pages, termes, médias — documents backend, intouchés
  • Réglages site (titre, thème, plugins activés, configs de plugins, configs de thèmes, menus) — backend, intouché
  • Utilisateurs + rôles — backend + Firebase Auth (ou Auth SQLite), intouchés
  • Clé API Flexweg — backend, intouchée
  • Plugins / thèmes externes installés/admin/plugins/<id>/ et /admin/themes/<id>/ sur Flexweg, intouchés
  • Registry externesettings/externalRegistry en base, intouché

Donc une nouvelle version d'admin se pose proprement : mêmes données, mêmes plugins, même configuration.

Ce qui est remplacé

Quand vous re-déployez dist/admin/ :

  • index.html, config.js (gardez config.js rempli !), assets/, runtime/
  • dist/admin/plugins/<id>/bundle.js pour les plugins intégrés (versions mises à jour)
  • dist/admin/themes/<id>/bundle.js pour les thèmes intégrés
  • dist/admin/external.default.json (baseline immutable)

Donc les versions intégrées de core-seo, flexweg-sitemaps, etc. sont mises à jour. Les plugins / thèmes externes que vous avez uploadés (incluant flexweg-multilang) ne sont PAS touchés.

Pour ré-installer / upgrader un plugin externe

Ré-uploadez son ZIP via Plugins → Install plugin. L'admin fait un upgrade in-place qui préserve la config (pluginConfigs[<id>]).

Le workflow d'upgrade typique

Sans build local

  1. Téléchargez la nouvelle dist/admin/ (release sur GitHub ou un autre canal)
  2. Ouvrez votre file manager Flexweg
  3. Supprimez le contenu de /admin/ (gardez le dossier lui-même)
  4. Sauvegardez config.js à part d'abord — il contient vos credentials
  5. Uploadez le nouveau contenu
  6. Re-uploadez votre config.js sauvegardé par-dessus
  7. Visitez /admin/ — vous êtes à la nouvelle version

Avec build local

BASH
cd flexweg-cms
git pull
npm install --legacy-peer-deps
npm run build
# upload dist/admin/ to Flexweg via rsync ou le file manager

config.js n'a pas besoin d'être ressauvegardé en mode dev (il est généré depuis .env à chaque build).

L'auto-installer Flexweg

Si votre compte Flexweg a l'auto-installer pour Flexweg CMS :

  1. Tableau de bord Flexweg → bouton menu → Install apps
  2. Trouvez Flexweg CMS → cliquez Update
  3. Flexweg drop la nouvelle version en arrière-plan, en préservant config.js

C'est le moyen le plus simple pour les non-développeurs. Vérifiez si votre compte l'a — la disponibilité varie selon les déploiements Flexweg.

Validation post-upgrade

Après une mise à jour :

  1. Visitez l'admin — vérifiez que le login fonctionne (le SetupForm ne doit PAS apparaître à nouveau)
  2. Tableau de bord → vérifiez que les cartes statistiques chargent
  3. Page Plugins → vérifiez que vos plugins externes sont toujours là (et que vos versions sont correctes)
  4. Page Thèmes → vérifiez que le thème actif est toujours le bon
  5. Réglages → Général → vérifiez les valeurs (titre, baseUrl, etc.)
  6. Ouvrez un post existant → vérifiez que l'éditeur fonctionne et que le contenu est intact

Si tout ça est OK, l'upgrade a réussi. Sinon, voir Dépannage.

Régénération après upgrade

Une mise à jour de l'admin peut introduire :

  • Des nouveaux templates de thème (si vous upgradez les thèmes intégrés)
  • Des nouveaux comportements dans les hooks (si vous upgradez les plugins intégrés)
  • Des nouveaux blocs disponibles dans l'éditeur

Pour que les pages existantes reflètent ces changements, cliquez Regenerate site → All HTML pages après upgrade. Pour 100 posts : ~30 s. Pour 1000 posts : ~5 min.

Ce n'est pas obligatoire pour la santé du site — les pages anciennes continuent de fonctionner avec l'ancien rendu. Mais pour profiter des améliorations, lancez le Regenerate.

Downgrade

Pour rollback à une version précédente : suivez le même workflow avec l'ancien ZIP. Le backend ne change pas — vos données restent.

Attention : si vous downgraderiez vers une version qui ne sait pas lire des données introduites par la version récente (par exemple un champ ajouté à Post), les nouvelles données seraient ignorées. C'est rare car la rétrocompatibilité est généralement maintenue, mais c'est à connaître.

Pourquoi pas d'auto-update ?

Trois raisons :

  1. Flexweg CMS est statique — pas de mécanisme pour qu'un script tourne en arrière-plan pour vérifier les updates
  2. Vous contrôlez quand l'update se déclenche — pas de surprise avec une version qui casse votre site
  3. Vous pouvez forker et continuer à updater depuis votre fork — pas de dépendance à un canal de release central

Le coût : vous devez updater manuellement. Le bénéfice : prévisibilité totale.