Installation des Extensions
Les plugins EmDash peuvent être installés de deux manières : depuis la marketplace via le tableau de bord d’administration, ou ajoutés directement dans votre configuration Astro. Les plugins de la marketplace s’exécutent dans un bac à sable isolé ; les plugins basés sur la configuration s’exécutent dans le processus.
Depuis la Marketplace
Section intitulée « Depuis la Marketplace »Le tableau de bord d’administration inclut un navigateur de marketplace où vous pouvez rechercher, installer et gérer des plugins.
Prérequis
Section intitulée « Prérequis »Pour installer des plugins de la marketplace, votre site a besoin :
-
Exécuteur de bac à sable configuré — Les plugins de la marketplace s’exécutent dans des workers V8 isolés, ce qui nécessite le runtime de bac à sable :
astro.config.mjs import { emdash } from "emdash/astro";export default defineConfig({integrations: [emdash({marketplace: "https://marketplace.emdashcms.com",sandboxRunner: true,}),],}); -
Accès administrateur — Seuls les administrateurs peuvent installer ou supprimer des plugins.
Parcourir et Installer
Section intitulée « Parcourir et Installer »- Ouvrez le panneau d’administration et naviguez vers Plugins > Marketplace
- Parcourez ou recherchez un plugin
- Cliquez sur la carte du plugin pour voir sa page de détails — README, captures d’écran, capacités et résultats de l’audit de sécurité
- Cliquez sur Installer
- Examinez la boîte de dialogue de consentement des capacités — cela montre ce à quoi le plugin aura accès
- Confirmez l’installation
Le plugin sera téléchargé, stocké dans votre bucket R2 du site et chargé dans l’exécuteur de bac à sable. Il est actif immédiatement.
Consentement des Capacités
Section intitulée « Consentement des Capacités »Avant l’installation, vous verrez une boîte de dialogue listant ce à quoi le plugin a besoin d’accéder :
| Capacité | Ce que cela signifie |
|---|---|
read:content | Lire votre contenu |
write:content | Créer, mettre à jour et supprimer du contenu |
read:media | Accéder à votre médiathèque |
write:media | Télécharger et gérer des médias |
network:fetch | Effectuer des requêtes réseau vers des hôtes spécifiques |
Audit de Sécurité
Section intitulée « Audit de Sécurité »Chaque version de plugin dans la marketplace a subi un audit de sécurité automatisé. Le verdict de l’audit apparaît sur la carte du plugin :
- Réussi — Aucun problème trouvé
- Avertissement — Préoccupations mineures signalées (examinez les résultats)
- Échec — Problèmes de sécurité significatifs détectés
Vous pouvez consulter le rapport d’audit complet sur la page de détails du plugin, y compris les résultats individuels et leur gravité.
Mises à Jour
Section intitulée « Mises à Jour »Lorsqu’une version plus récente d’un plugin installé est disponible :
- Allez dans Plugins dans le panneau d’administration
- Les plugins de la marketplace affichent un badge Mise à jour disponible
- Cliquez sur Mettre à jour pour voir le journal des modifications et tout changement de capacités
- Si la nouvelle version nécessite des capacités supplémentaires, vous verrez un diff et devrez approuver
- Confirmez pour mettre à jour
Désinstallation
Section intitulée « Désinstallation »- Allez dans Plugins dans le panneau d’administration
- Cliquez sur le plugin de la marketplace que vous souhaitez supprimer
- Cliquez sur Désinstaller
- Choisissez de conserver ou de supprimer les données stockées du plugin
- Confirmez
Le code du plugin en bac à sable est supprimé de votre bucket R2 et il cesse de s’exécuter immédiatement.
Depuis la Configuration
Section intitulée « Depuis la Configuration »Pour les plugins de confiance (votre propre code, ou des packages que vous installez via npm), ajoutez-les directement à votre configuration Astro :
typescript title="astro.config.mjs"import { defineConfig } from "astro/config";import { emdash } from "emdash/astro";import seoPlugin from "@emdash-cms/plugin-seo";
export default defineConfig({ integrations: [ emdash({ plugins: [ seoPlugin({ generateSitemap: true }), ], }), ],});Plugins basés sur la configuration :
- S’exécutent dans le processus (pas en bac à sable)
- Ont un accès complet aux APIs Node.js
- Sont chargés au moment de la construction et à chaque démarrage du serveur
- Ne peuvent pas être installés ou supprimés depuis l’interface d’administration
Marketplace vs. Configuration : Quand Utiliser Chacun
Section intitulée « Marketplace vs. Configuration : Quand Utiliser Chacun »| Marketplace | Configuration | |
|---|---|---|
| Exécution | Isolat V8 en bac à sable | Dans le processus |
| Méthode d’installation | Interface d’administration | Changement de code + déploiement |
| Capacités | Appliquées à l’exécution | Documentation uniquement |
| APIs Node.js | Non disponibles | Accès complet |
| Idéal pour | Plugins tiers | Code interne |
| Mises à jour | En un clic dans l’admin | Mise à jour de version + déploiement |