Un tema EmDash è un progetto Astro completo distribuito come modello create-astro. Contiene le route e i componenti pubblici, la configurazione runtime di EmDash e un file seed opzionale per il modello di contenuto iniziale del sito.
Non esiste un pacchetto tema runtime né una gerarchia di modelli. Dopo lo scaffolding, i file del tema appartengono al sito e possono essere modificati direttamente.
Contenuto del tema
I modelli EmDash attuali usano questi percorsi:
astro.config.mjs
package.json
seed/
└── seed.json
src/
├── components/
├── layouts/
├── live.config.ts
├── pages/
└── styles/
astro.config.mjsconfigura l’output del server, l’adapter di deployment, EmDash, il database e lo storage.src/live.config.tsregistra la collection live_emdash.src/pages/definisce le route pubbliche.seed/seed.jsonpuò dichiarare collection, campi, impostazioni, tassonomie, byline, menu, redirect, aree widget, sezioni e contenuti di esempio iniziali.package.json#emdash.seedpunta al file seed.
Il modello vuoto deliberatamente non ha un seed utente e ricade sul seed predefinito integrato di EmDash. Gli altri modelli attuali puntano a seed/seed.json.
Installare un modello
Il comando seguente genera il modello blog Node:
npm create astro@latest -- --template @emdash-cms/template-blog
Usa il pacchetto -cloudflare corrispondente per un progetto Cloudflare Workers:
npm create astro@latest -- --template @emdash-cms/template-blog-cloudflare
I pacchetti modello attuali includono:
| Scopo | Node | Cloudflare |
|---|---|---|
| Guscio di progetto vuoto | @emdash-cms/template-blank | Nessuna controparte attuale |
| Sito di pagine di base | @emdash-cms/template-starter | @emdash-cms/template-starter-cloudflare |
| Post, pagine, categorie, tag e widget | @emdash-cms/template-blog | @emdash-cms/template-blog-cloudflare |
| Portfolio di progetti | @emdash-cms/template-portfolio | @emdash-cms/template-portfolio-cloudflare |
| Pagine marketing composte da blocchi versionati | @emdash-cms/template-marketing | @emdash-cms/template-marketing-cloudflare |
Dopo lo scaffolding, installa le dipendenze e avvia il sito generato:
cd my-site
npm install
npm run dev
Apri http://localhost:4321/_emdash/admin. La prima visita reindirizza alla configurazione, dove inserisci l’identità del sito e i dettagli dell’amministratore. Quando il modello selezionato ha voci di esempio, la procedura guidata consente anche di includerle o ometterle. Includerle è utile mentre si valuta il design perché le route hanno contenuti realistici da renderizzare.
Prima configurazione
EmDash legge il seed in fase di build. Cerca in questo ordine:
.emdash/seed.json.- Il percorso in
package.json#emdash.seed. seed/seed.json.- Il seed predefinito integrato quando non viene trovato un seed utente.
Alla prima visita admin, la procedura guidata di configurazione mostra i metadati del seed e consente all’amministratore di scegliere se includere i contenuti di esempio. Applica il seed a un database vuoto e registra il completamento della configurazione. Gli avvii successivi non riapplicano il seed a un sito esistente.
Personalizzare il sito installato
Modifica direttamente il progetto generato:
- Cambia i file delle route in
src/pages/. - Cambia il markup condiviso in
src/layouts/esrc/components/. - Cambia il modello iniziale in
seed/seed.jsonprima della prima configurazione. - Gestisci il modello di un sito esistente in Content Types nell’admin.
Usa Creare temi per preparare un modello riutilizzabile e File seed per il contratto seed completo.