Thèmes

Sur cette page

Un thème EmDash est un projet Astro complet distribué comme modèle create-astro. Il contient les routes et composants publics, la configuration d’exécution EmDash et un fichier seed optionnel pour le modèle de contenu initial du site.

Il n’y a pas de paquet de thème d’exécution ni de hiérarchie de modèles. Après le scaffolding, les fichiers du thème appartiennent au site et peuvent être modifiés directement.

Contenu du thème

Les modèles EmDash actuels utilisent ces chemins :

astro.config.mjs
package.json
seed/
└── seed.json
src/
├── components/
├── layouts/
├── live.config.ts
├── pages/
└── styles/
  • astro.config.mjs configure la sortie serveur, l’adaptateur de déploiement, EmDash, la base de données et le stockage.
  • src/live.config.ts enregistre la collection live _emdash.
  • src/pages/ définit les routes publiques.
  • seed/seed.json peut déclarer des collections, champs, réglages, taxonomies, bylines, menus, redirections, zones de widgets, sections et contenu d’exemple initiaux.
  • package.json#emdash.seed pointe vers le fichier seed.

Le modèle vide n’a volontairement pas de seed utilisateur et retombe sur le seed par défaut intégré d’EmDash. Les autres modèles actuels pointent vers seed/seed.json.

Installer un modèle

La commande suivante génère le modèle de blog Node :

npm create astro@latest -- --template @emdash-cms/template-blog

Utilisez le paquet -cloudflare correspondant pour un projet Cloudflare Workers :

npm create astro@latest -- --template @emdash-cms/template-blog-cloudflare

Les paquets de modèles actuels comprennent :

ObjectifNodeCloudflare
Coquille de projet vide@emdash-cms/template-blankPas d’équivalent actuel
Site de pages de base@emdash-cms/template-starter@emdash-cms/template-starter-cloudflare
Articles, pages, catégories, tags et widgets@emdash-cms/template-blog@emdash-cms/template-blog-cloudflare
Portfolio de projets@emdash-cms/template-portfolio@emdash-cms/template-portfolio-cloudflare
Pages marketing composées de blocs versionnés@emdash-cms/template-marketing@emdash-cms/template-marketing-cloudflare

Après le scaffolding, installez les dépendances et démarrez le site généré :

cd my-site
npm install
npm run dev

Ouvrez http://localhost:4321/_emdash/admin. La première visite redirige vers la configuration, où vous saisissez l’identité du site et les détails de l’administrateur. Lorsque le modèle sélectionné a des entrées d’exemple, l’assistant permet aussi de les inclure ou de les omettre. Les inclure est utile pour évaluer le design car les routes ont un contenu réaliste à afficher.

Première configuration

EmDash lit le seed au moment du build. Il cherche dans cet ordre :

  1. .emdash/seed.json.
  2. Le chemin dans package.json#emdash.seed.
  3. seed/seed.json.
  4. Le seed par défaut intégré lorsqu’aucun seed utilisateur n’est trouvé.

Lors de la première visite admin, l’assistant de configuration affiche les métadonnées du seed et laisse l’administrateur choisir d’inclure ou non le contenu d’exemple. Il applique le seed à une base de données vide et enregistre l’achèvement de la configuration. Les démarrages ultérieurs ne réappliquent pas le seed à un site existant.

Personnaliser le site installé

Modifiez directement le projet généré :

  • Changez les fichiers de routes dans src/pages/.
  • Changez le balisage partagé dans src/layouts/ et src/components/.
  • Changez le modèle initial dans seed/seed.json avant la première configuration.
  • Gérez le modèle d’un site existant sous Content Types dans l’admin.

Utilisez Créer des thèmes pour préparer un modèle réutilisable et Fichiers seed pour le contrat seed complet.