新文章+渲染鲁棒性

This commit is contained in:
2026-06-19 09:12:01 +08:00 Unverified
parent 2d4eeb362c
commit 2f834a0eb7
3 changed files with 395 additions and 1 deletions
+6 -1
View File
@@ -30,6 +30,11 @@ function asArray(value: unknown): string[] {
return [];
}
function getCategories(entry: CollectionEntry<'posts'>): string[] {
const data = entry.data as Record<string, unknown>;
return [...asArray(data.categories), ...asArray(data.category)];
}
function toDate(value: unknown): Date {
if (value instanceof Date) return value;
if (typeof value === 'string' || typeof value === 'number') {
@@ -84,7 +89,7 @@ export async function getAllPosts(): Promise<BlogPost[]> {
date,
dateText: formatDate(date),
tags: asArray(entry.data.tags),
categories: asArray(entry.data.categories),
categories: getCategories(entry),
summary: makeSummary(entry),
comments: entry.data.comments !== false,
cover: typeof entry.data.cover === 'string' ? entry.data.cover : undefined,