From 302a07203618762dc951f5330a3a47a1308abeb5 Mon Sep 17 00:00:00 2001 From: eric Date: Mon, 9 Mar 2026 04:08:32 -0500 Subject: [PATCH] 's' --- app/[locale]/blog/page.tsx | 111 ++++++ app/[locale]/careers/page.tsx | 104 +++++ app/[locale]/contact/page.tsx | 106 +++++ app/[locale]/cookies/page.tsx | 48 +++ app/[locale]/guidelines/page.tsx | 62 +++ app/[locale]/help/page.tsx | 66 ++++ app/[locale]/press/page.tsx | 64 ++++ app/[locale]/privacy/page.tsx | 48 +++ app/[locale]/safety/page.tsx | 59 +++ app/[locale]/support/page.tsx | 128 +++++++ app/[locale]/terms/page.tsx | 48 +++ app/data/mock.ts | 638 +++++++++++++++++++++++++++++++ config/footer.config.ts | 3 +- messages/en.json | 13 +- messages/zh.json | 13 +- 15 files changed, 1498 insertions(+), 13 deletions(-) create mode 100644 app/[locale]/blog/page.tsx create mode 100644 app/[locale]/careers/page.tsx create mode 100644 app/[locale]/contact/page.tsx create mode 100644 app/[locale]/cookies/page.tsx create mode 100644 app/[locale]/guidelines/page.tsx create mode 100644 app/[locale]/help/page.tsx create mode 100644 app/[locale]/press/page.tsx create mode 100644 app/[locale]/privacy/page.tsx create mode 100644 app/[locale]/safety/page.tsx create mode 100644 app/[locale]/support/page.tsx create mode 100644 app/[locale]/terms/page.tsx create mode 100644 app/data/mock.ts diff --git a/app/[locale]/blog/page.tsx b/app/[locale]/blog/page.tsx new file mode 100644 index 0000000..fc4623c --- /dev/null +++ b/app/[locale]/blog/page.tsx @@ -0,0 +1,111 @@ +import Footer from "@/app/components/Footer"; +import { blogPosts } from "@/app/data/mock"; + +export const metadata = { + title: "博客 | 游牧中国", + description: "阅读最新的数字游民资讯、城市攻略、签证指南和经验分享。", +}; + +export default function BlogPage() { + const featuredPost = blogPosts.find((post) => post.featured); + const regularPosts = blogPosts.filter((post) => !post.featured); + + return ( + <> +
+
+

+ + 博客 +

+

+ 数字游民资讯、城市攻略、签证指南和经验分享 +

+ + {/* Featured Post */} + {featuredPost && ( +
+
+
+
+ {featuredPost.title} +
+
+ + {featuredPost.category} + +

+ {featuredPost.title} +

+

+ {featuredPost.excerpt} +

+
+ {featuredPost.author} +
+ + {featuredPost.author} + + + {featuredPost.date} · {featuredPost.readTime} + +
+
+
+
+
+
+ )} + + {/* Regular Posts Grid */} +
+ {regularPosts.map((post) => ( +
+
+ {post.title} + + {post.category} + +
+
+

+ {post.title} +

+

+ {post.excerpt} +

+
+ {post.author} + + {post.author} · {post.readTime} + +
+
+
+ ))} +
+
+
+