テーマ

このページ

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 ライブコレクションを登録します。
  • 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 で既存サイトのモデルを管理する。

再利用可能なテンプレートの準備には テーマの作成 を、完全なシード契約には シードファイル を使ってください。