Activer la version du contenu et le workflow de révision dans Strapi 5
Apprenez à installer Revisionary, configurer les types de contenu versionnés, utiliser panneau d’historique, mettre en place revues et exposer l’historique via API Content.
Par l’équipe Revisionary · · 5 min de lecture
Vous pouvez activer la version complète du contenu et un workflow de révision dans Strapi 5 en installant le plugin Revisionary, en marquant les types de contenu souhaités comme versionnés, et en utilisant les panneaux intégrés pour l’historique, les revues et la corbeille. Le plugin enregistre chaque modification, permet à plusieurs éditeurs de collaborer en toute sécurité, et expose les données de version via l’API Content.
1. Pourquoi utiliser Revisionary pour le versionnage et les revues ?
Revisionary transforme un projet Strapi ordinaire en une plateforme d’édition collaborative. Il :
- Conserve un historique complet pour chaque entrée, jusqu’aux modifications au niveau des champs.
- Fournit un panneau d’historique des versions visuel dans le Content Manager.
- Propose un espace de révision où les éditeurs peuvent approuver ou rejeter les changements en attente.
- Conserve les entrées supprimées dans une Corbeille par locale, afin que les suppressions accidentelles soient récupérables.
- Enregistre chaque action sensible dans un journal d’audit pour la conformité. Toutes ces fonctionnalités sont configurables sans écrire de code personnalisé, ce qui les rend idéales pour les agences et les équipes qui ont besoin de traçabilité et de contrôle éditorial.
2. Installer Revisionary
- Téléchargez le dernier fichier zip de Revisionary depuis le portail de votre compte.
- Extrayez le zip dans le dossier
./pluginsde votre projet Strapi. - Exécutez la commande d’installation :
npm run strapi build && npm run strapi developLe plugin détectera l’installation existante de Strapi 5, migrera les éventuelles données précédentes, et enregistrera une entrée Plugin updated dans le journal d’audit. Consultez le guide d’installation officiel pour plus de détails : /docs/getting-started/install.
3. Configurer les types de contenu versionnés
Une fois le plugin activé, vous devez décider quels types de contenu doivent conserver un historique de version.
- Ouvrez Settings → Plugins → Revisionary dans l’administration de Strapi.
- Dans l’onglet Content types, basculez le commutateur pour chaque type de collection que vous souhaitez versionner.
- Cliquez sur Save en bas de la page (la page de paramètres General) pour appliquer les modifications.
La configuration est stockée dans
config/plugins.ts. Un exemple minimal :
export default ({ env }) => ({
// autres plugins …
revisionary: {
enabled: true,
versionedContentTypes: ['api::article.article', 'api::page.page'],
// optionnel : politique de rétention en jours
retentionDays: 365,
},
});Pour la liste complète des options de configuration, consultez /docs/reference/configuration.
4. Utiliser le panneau d’historique des versions
Lorsque vous ouvrez une entrée d’un type versionné, la colonne de droite affiche le panneau d’historique des versions. Il répertorie chaque version sauvegardée, regroupée par jour, la plus récente étant en haut. Fonctionnalités :
- Différence au niveau du champ : survolez un champ et cliquez sur l’icône horloge pour voir ce qui a changé.
- Comparer deux versions : sélectionnez une version et cliquez sur Compare pour visualiser les différences avec l’entrée actuelle.
- Restaurer : cliquez sur Restore ou appuyez sur
Rsur une version pour ramener l’entrée à cet état. - Étapes clés : nommez une version (par ex., « Approved by legal ») pour une récupération rapide. Ces actions sont enregistrées dans le journal d’audit, que vous pouvez inspecter sous /docs/recover-and-audit/audit.
5. Mettre en place un workflow de révision
L’espace de révision permet aux éditeurs de soumettre des changements pour approbation avant leur mise en ligne.
- Dans Settings → Roles → Plugins → Revisionary, assurez‑vous que la permission « Can submit for review » est accordée aux rôles appropriés.
- Lors de la modification d’une entrée, cliquez sur Submit for review au lieu de Publish. L’entrée est déplacée vers l’espace de révision, visible sous l’onglet Reviews.
- Les réviseurs voient une liste d’entrées en attente, chacune avec une vue Diff et des boutons Approve, Reject, ou Request changes.
- Approuver une révision publie automatiquement l’entrée et enregistre l’action dans le journal d’audit. Rejeter renvoie l’entrée à l’état de brouillon, tout en conservant l’historique des versions. Le processus de révision s’intègre aux fonctionnalités Collaboration : si deux utilisateurs ouvrent la même entrée, le premier utilisateur détient un verrouillage d’édition, et le second voit une notification. En savoir plus sur les verrous d’édition à /docs/teamwork/locks.
6. Gérer le contenu supprimé – Corbeille et rétention
Lorsqu’une entrée versionnée est supprimée, Revisionary déplace son dernier état vers la Corbeille pour chaque locale. Cela évite une perte permanente et permet des restaurations sélectives.
- Ouvrez le panneau Trash depuis la navigation à gauche.
- Localisez l’entrée supprimée, prévisualisez son contenu, et cliquez sur Restore pour la récupérer.
- Les entrées de la corbeille respectent les paramètres Retention and storage (voir /docs/settings/retention). Vous pouvez configurer le nombre de jours pendant lesquels les sauvegardes automatiques et les éléments de la corbeille sont conservés avant une purge automatique.
7. Exposer l’historique des versions via l’API Content
Les applications front‑end ont souvent besoin d’afficher les journaux de modifications ou de revenir à une version précédente. Revisionary étend l’API Content par défaut avec des points d’accès aux versions.
Exemple de requête pour récupérer l’historique d’un article (remplacez ARTICLE_ID)
GET /api/articles/ARTICLE_ID/versions?populate=*La réponse comprend un tableau d’objets version, chacun contenant :
id– identifiant de versioncreatedAt– horodatage de l’enregistrementlocale– code de la localedata– l’instantané complet de l’entrée à ce momentdiff– liste des champs modifiés (optionnel, activé via paramètre de requête) Les front‑ends construits avec Next.js peuvent appeler ce point d’accès lors du rendu côté serveur ou lors de la révalidation ISR pour afficher un journal « last updated ». Pour la référence API complète, voir /docs/reference/content-api.
8. Bonnes pratiques pour les équipes
| Pratique | Raison |
|---|---|
| Versionner uniquement les types essentiels | Réduit la surcharge de stockage et maintient le journal d’audit ciblé. |
| Définir une période de rétention réaliste | S’aligne avec les exigences de conformité et empêche une croissance incontrôlée. |
| Attribuer des réviseurs dédiés | Rationalise le processus d’approbation et évite les goulets d’étranglement. |
| Utiliser les étapes clés pour les validations légales ou marketing | Facilite la localisation de la version exacte requise pour les audits. |
| Surveiller régulièrement le journal d’audit | Détecte tôt les restaurations ou suppressions inattendues. |
| Activer les notifications de verrouillage d’édition | Empêche deux utilisateurs d’écraser le travail de l’autre. |
9. Mettre à jour ou supprimer Revisionary
Lorsque une nouvelle version du plugin est publiée, vous pouvez la mettre à jour via la page Update, disable, uninstall. Le processus migre automatiquement les données de version existantes et consigne la mise à jour. Consultez le guide pas‑à‑pas à /docs/reference/update-uninstall. Si vous devez un jour désinstaller, le plugin nettoie ses tables mais conserve une entrée finale du journal d’audit pour la traçabilité.
10. Résumé
Revisionary ajoute un versionnage robuste du contenu, un workflow de révision intégré, la gestion de la corbeille et un journal d’audit complet à tout projet Strapi 5. En installant le plugin, en marquant les bons types de contenu et en configurant les permissions de révision, les équipes obtiennent un contrôle éditorial total sans écrire de code personnalisé. Le panneau d’historique des versions, l’espace de révision et les extensions API facilitent la collaboration, la conformité aux réglementations et la mise à disposition des informations de changement aux applications front‑end.
Pour aller plus loin, explorez les autres sections de la documentation Revisionary comme /docs/everyday-use/field-history pour les détails du diff au niveau du champ, ou /docs/teamwork/review pour des configurations de workflow plus avancées.
L’équipe Revisionary
Les développeurs de Revisionary, un plugin d’historique des versions pour Strapi 5. Nous écrivons sur Strapi, le développement web, l’IA et la sécurité des applications.
Cet article a été rédigé avec l'aide d'une IA.