公开页补齐自引用 Canonical 与按类型的结构化数据,图片补上说明文字。

后台设置和内容编辑改成可导航布局;部署用访客 origin 生成 Canonical,避免落到容器地址。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-09-20 00:11:24 +08:00
parent 2b3d122e56
commit 40bbad2c82
51 changed files with 3042 additions and 1318 deletions

View File

@@ -14,16 +14,23 @@ import {
SiteDocPageNav,
SiteDocBreadcrumb,
} from "@/components/site-doc";
export const metadata: Metadata = {
title: "站点公告",
description: "站点公告与通知列表",
};
import { requestCanonical } from "@/lib/canonicalMeta";
import { canonicalPage } from "@/lib/siteUrl";
interface PageProps {
searchParams: Promise<{ page?: string }>;
}
export async function generateMetadata({ searchParams }: PageProps): Promise<Metadata> {
const sp = await searchParams;
const page = canonicalPage(sp.page);
return {
title: "站点公告",
description: "站点公告与通知列表",
...(await requestCanonical("/announcements", page ? { page } : undefined)),
};
}
/** 粗略去掉 Markdown,取摘要 */
function plainSummary(md: string, max = 120): string {
const text = md