Astro v5 のコンテンツコレクション入門
Content Layer API とは
Astro v5 では、コンテンツ管理の仕組みが大きく変わりました。
主な変更点
- 設定ファイルの場所:
src/content/config.ts→src/content.config.ts - ローダー:
glob()ローダーでファイルを検出 - ID:
slugの代わりにidを使用
glob ローダーの使い方
import { glob } from "astro/loaders";
const blog = defineCollection({
loader: glob({ pattern: "**/*.md", base: "./src/data/blog" }),
schema: z.object({
title: z.string(),
// ...
}),
});
まとめ
Content Layer API により、より柔軟なコンテンツ管理が可能になりました。