diff --git a/app/privacy-policy/page.tsx b/app/privacy-policy/page.tsx new file mode 100644 index 0000000..ba5925f --- /dev/null +++ b/app/privacy-policy/page.tsx @@ -0,0 +1,27 @@ +import { notFound } from "next/navigation"; +import type { Metadata } from "next"; +import { getSimpleContentPageBySlug } from "@/services/legal.service"; + +export async function generateMetadata(): Promise { + const page = await getSimpleContentPageBySlug("privacy-policy").catch(() => null); + return { title: page?.title ?? "隐私政策" }; +} + +export default async function PrivacyPolicyPage() { + const page = await getSimpleContentPageBySlug("privacy-policy").catch(() => null); + + if (!page) { + notFound(); + } + + return ( +
+

{page.title}

+ {/* page.body 为 Wagtail RichTextField 渲染出的 HTML,内容仅由后台编辑人员维护,非用户输入,可信任直接渲染 */} +
+
+ ); +} diff --git a/components/layout/Footer.tsx b/components/layout/Footer.tsx index 6c55541..481971d 100644 --- a/components/layout/Footer.tsx +++ b/components/layout/Footer.tsx @@ -3,6 +3,11 @@ export default function Footer() {