主題

本頁內容

EmDash 主題是作為 create-astro 範本發佈的完整 Astro 專案。它包含公開路由與元件、EmDash 執行階段設定,以及用於站台初始內容模型的選用種子檔案。

沒有執行階段主題套件或範本階層。鷹架之後,主題檔案屬於站台,可以直接編輯。

主題內容

目前 EmDash 範本使用這些路徑:

astro.config.mjs
package.json
seed/
└── seed.json
src/
├── components/
├── layouts/
├── live.config.ts
├── pages/
└── styles/
  • astro.config.mjs 設定伺服器輸出、部署轉接器、EmDash、資料庫與儲存。
  • src/live.config.ts 註冊 _emdash live collection。
  • src/pages/ 定義公開路由。
  • seed/seed.json 可以宣告初始集合、欄位、設定、分類法、署名、選單、重新導向、小工具區域、區段與範例內容。
  • package.json#emdash.seed 指向種子檔案。

空白範本故意沒有使用者種子,並回退到 EmDash 的內建預設種子。其他目前範本指向 seed/seed.json。

安裝範本

以下指令搭建 Node 部落格範本:

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

對於 Cloudflare Workers 專案,使用對應的 -cloudflare 套件:

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

目前範本套件包括:

用途NodeCloudflare
空專案外殼@emdash-cms/template-blank目前無對應套件
基礎頁面站台@emdash-cms/template-starter@emdash-cms/template-starter-cloudflare
文章、頁面、分類、標籤與小工具@emdash-cms/template-blog@emdash-cms/template-blog-cloudflare
專案作品集@emdash-cms/template-portfolio@emdash-cms/template-portfolio-cloudflare
由版本化區塊組成的行銷頁面@emdash-cms/template-marketing@emdash-cms/template-marketing-cloudflare

鷹架之後,安裝相依性並啟動產生的站台:

cd my-site
npm install
npm run dev

開啟 http://localhost:4321/_emdash/admin。首次造訪會重新導向到設定,在此輸入站台身分與管理員詳細資訊。當所選範本有範例條目時,精靈還可讓你包含或省略它們。評估設計時包含它們很有用,因為路由有可算繪的真實內容。

首次設定

EmDash 在建置時讀取種子。按此順序尋找:

  1. .emdash/seed.json。
  2. package.json#emdash.seed 中的路徑。
  3. seed/seed.json。
  4. 未找到使用者種子時的內建預設種子。

首次造訪管理後台時,設定精靈會顯示種子中繼資料,並讓管理員選擇是否包含範例內容。它將種子套用到空資料庫並記錄設定完成。之後的啟動不會對現有站台重新套用種子。

自訂已安裝的站台

直接編輯產生的專案:

  • 變更 src/pages/ 中的路由檔案。
  • 變更 src/layouts/ 與 src/components/ 中的共用標記。
  • 在首次設定前變更 seed/seed.json 中的初始模型。
  • 在管理後台的 Content Types 下管理現有站台的模型。

使用建立主題準備可重用範本,並使用種子檔案了解完整的種子契約。