Panneau d'administration

Sur cette page

Le panneau d’administration est l’interface d’édition incluse avec un site EmDash. Il est servi par l’application Astro à /_emdash/admin/ et utilise la même base de données, le même stockage multimédia, le même modèle de contenu et les mêmes extensions que les pages publiques.

La première visite à la route d’administration d’un nouveau site ouvre l’assistant de configuration. Après la configuration, les permissions d’un utilisateur connecté déterminent quel contenu et quels outils d’administration sont disponibles.

Zones de travail

La navigation s’adapte aux collections et extensions installées du site. Voici les principales zones qu’un éditeur ou administrateur peut voir :

ZoneÀ quoi elle sert
Tableau de bordUne vue de démarrage avec des widgets de site et d’extensions
Noms de collections, comme ArticlesLister, créer, éditer, publier et déplacer des entrées vers la corbeille
Groupes de collectionsDossiers pliables contenant des collections partageant un groupe, plus des taxonomies assignées uniquement aux collections de ce dossier
MédiasTélécharger, rechercher, inspecter, remplacer et supprimer des fichiers
Taxonomies et SignaturesOrganiser le contenu et gérer les auteurs crédités
Menus et Zones de WidgetsGérer la navigation et les régions contrôlées par l’éditeur rendues par le site
CommentairesExaminer et modérer les commentaires lorsqu’une collection les active
Types de ContenuCréer des collections et des champs et modifier leurs paramètres
ExtensionsInstaller, configurer et ouvrir les pages fournies par les extensions
ParamètresConfigurer le site, l’authentification, les sauvegardes, le transfert de site, l’e-mail, la recherche et d’autres services

Cette interface gère les données et la configuration. Les pages et composants Astro définissent toujours la mise en page publique. L’ajout d’un élément de menu ou d’un widget dans l’admin ne modifie le site public que lorsqu’un composant Astro interroge et affiche ce menu ou cette zone de widget.

Éditeur de contenu

L’éditeur de contenu construit son formulaire à partir de la collection sélectionnée. Un champ de texte court devient une saisie de texte, un champ portableText devient l’éditeur de texte enrichi, un champ multimédia ouvre le sélecteur de médias et un champ de référence permet à l’éditeur de sélectionner une autre entrée. Les paramètres de collection ajoutent des contrôles de publication, d’aperçu, de révision, de commentaire et de recherche le cas échéant.

L’éditeur de texte enrichi prend en charge les titres, listes, citations, code, liens, images et blocs personnalisés enregistrés. Si le contenu importé contient un bloc que l’éditeur ne peut pas afficher, EmDash conserve le bloc stocké plutôt que de le supprimer lors de la prochaine sauvegarde.

Enregistrer et publier sont des états séparés pour les collections avec brouillons. Enregistrer stocke le travail actuel en tant que brouillon. Publier ou Publier les modifications rend cette version enregistrée disponible pour les requêtes publiques. La planification enregistre quand un brouillon ou une modification en attente doit devenir public.

Lorsque le verrouillage d’édition est activé pour une collection, l’ouverture d’une entrée maintient un verrou pour cet éditeur. Les autres rédacteurs sont refusés pendant que le verrou est actif au lieu d’écraser silencieusement l’entrée. Si une entrée change après qu’un éditeur l’ait chargée, EmDash refuse également la sauvegarde obsolète afin que l’éditeur puisse recharger la version plus récente au lieu de l’écraser.

Rôles et permissions

EmDash inclut cinq rôles : Abonné, Contributeur, Auteur, Éditeur et Admin. Les permissions augmentent au fur et à mesure que le niveau de rôle augmente, mais la propriété compte toujours pour les actions de contenu et de médias. Par exemple, les Auteurs peuvent éditer et publier leurs propres entrées, tandis que les Éditeurs peuvent le faire pour n’importe quelle entrée.

Les zones administratives ont des vérifications de permissions séparées :

  • Les Éditeurs peuvent gérer les taxonomies, menus, signatures, widgets, sections et contenu d’autres auteurs.
  • Les Admins peuvent modifier le modèle de contenu, les utilisateurs, les extensions, les redirections, les sauvegardes et les paramètres, peuvent exporter ou importer l’ensemble du site et peuvent supprimer définitivement le contenu mis à la corbeille.
  • Le serveur vérifie les permissions pour chaque action. Masquer un élément de navigation n’est pas la limite de sécurité.

Lisez Authentification et rôles utilisateur pour la configuration de compte et les descriptions complètes des rôles.

Médias

La bibliothèque multimédia peut afficher les fichiers dans une grille ou une liste, les rechercher et les filtrer, afficher les métadonnées et effectuer des actions multi-éléments. Le comportement de téléchargement dépend de l’adaptateur de stockage configuré. Lorsque l’adaptateur prend en charge les téléchargements signés, le navigateur envoie le fichier au stockage en utilisant une URL signée de courte durée, puis confirme le téléchargement terminé avec EmDash.

La suppression d’un élément multimédia peut affecter les entrées qui y font référence. Utilisez les informations d’utilisation des médias et les outils de remplacement avant de supprimer un actif utilisé sur des pages publiques. Consultez Bibliothèque multimédia pour les flux de travail de téléchargement, remplacement et suppression.

Interfaces d’extensions

Les extensions peuvent ajouter des widgets de tableau de bord, des sections de paramètres, des contrôles d’éditeur ou des pages d’administration complètes. Une page d’extension est montée sous la propre route d’administration de cette extension ; elle ne peut pas remplacer un écran d’administration principal. L’extension a toujours besoin de vérifications de permissions côté serveur pour toute action protégée, même lorsque le lien d’administration n’est affiché qu’à un rôle particulier.

Lisez Installation d’extensions pour ajouter une extension. Les développeurs de sites construisant une interface doivent utiliser les APIs d’administration d’extensions natives plutôt que de modifier l’application d’administration principale.

Exigences de configuration

L’admin est une application React, donc le projet Astro doit installer @astrojs/react, react et react-dom et enregistrer react() dans astro.config.mjs. Le site a également besoin d’une sortie serveur, d’une base de données et d’un stockage multimédia. Ajouter EmDash à un projet Astro existant montre la configuration locale complète.