Plugins

Sur cette page

Les plugins étendent EmDash via une surface d’extension définie. Ils peuvent réagir aux événements du cycle de vie du contenu, stocker leurs propres données, exposer des paramètres aux administrateurs, ajouter des pages au panneau d’administration et servir des routes d’API.

Ce que les plugins peuvent faire

Réagir aux événements

Exécuter du code lors de l’enregistrement de contenu, du téléchargement de médias, de la modération de commentaires, des tâches planifiées et des événements du cycle de vie des plugins.

Stocker des données

Persister des enregistrements spécifiques au plugin dans des collections indexées, plus un magasin clé-valeur par plugin pour les paramètres et l’état.

Ajouter des pages d'administration

Contribuer des pages et des widgets de tableau de bord au panneau d’administration, avec des formulaires de paramètres auto-générés.

Servir des routes d'API

Exposer des endpoints sous /_emdash/api/plugins/<id>/<route> pour l’interface d’administration ou les intégrations externes.

Appeler des API externes

Effectuer des requêtes HTTP avec des listes d’hôtes autorisés déclarées.

Envoyer des e-mails

Envoyer des e-mails transactionnels via le fournisseur configuré.

Deux types de plugins

Les plugins EmDash existent en deux formats :

  • Plugins sandboxés s’exécutent dans un environnement d’exécution isolé géré par un exécuteur de sandbox configurable. Ils peuvent être installés depuis le marketplace en un clic, sont soumis à l’application des capacités et des ressources, et n’atteignent que les API qu’ils déclarent. C’est le choix recommandé pour la plupart des plugins.
  • Plugins natifs s’exécutent dans le même processus que votre site Astro. Ils ont un accès complet à l’environnement d’exécution, peuvent fournir des pages d’administration React et des composants de rendu Portable Text, et injecter du HTML dans les pages publiques. Ils s’installent via un changement de code plus un déploiement, et s’exécutent depuis npm plutôt que depuis le marketplace.

Si vous installez un plugin créé par quelqu’un d’autre, vous voudrez presque toujours un plugin sandboxé. Si vous en créez un vous-même, consultez Choisir un format de plugin.

Pour les opérateurs de site

Si vous souhaitez installer ou configurer des plugins sur votre site :

Installer des plugins

Installer depuis le marketplace, activer, configurer les paramètres.

Pour les auteurs de plugins

Si vous souhaitez créer un plugin :