import { fetchAPI } from "./api-client"; import type { BlogPageDetail, BlogPageSummary, WagtailListResponse, } from "@/types/wagtail"; /** * 获取博客列表(按发布时间倒序)。 */ export async function getBlogList(): Promise { const res = await fetchAPI>( "/api/v2/pages/?type=blog.BlogPage&fields=intro,published_at&order=-published_at", { tags: ["blog-list"] }, ); return res.items; } /** * 根据 slug 获取博客详情。 */ export async function getBlogBySlug(slug: string): Promise { const res = await fetchAPI>( `/api/v2/pages/?type=blog.BlogPage&slug=${encodeURIComponent(slug)}&fields=body,intro,published_at&limit=1`, { tags: [`blog:${slug}`] }, ); return res.items[0] ?? null; }