Next.js 14 website with standalone output configured for Docker deployment. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
31 lines
1.3 KiB
TypeScript
31 lines
1.3 KiB
TypeScript
import { MetadataRoute } from "next";
|
|
import { experiences, blogPosts } from "@/lib/constants";
|
|
|
|
const SITE_URL = "https://theanatolianedit.com";
|
|
|
|
export default function sitemap(): MetadataRoute.Sitemap {
|
|
const staticPages = [
|
|
{ url: SITE_URL, lastModified: new Date(), changeFrequency: "weekly" as const, priority: 1.0 },
|
|
{ url: `${SITE_URL}/experiences`, lastModified: new Date(), changeFrequency: "weekly" as const, priority: 0.9 },
|
|
{ url: `${SITE_URL}/about`, lastModified: new Date(), changeFrequency: "monthly" as const, priority: 0.7 },
|
|
{ url: `${SITE_URL}/blog`, lastModified: new Date(), changeFrequency: "weekly" as const, priority: 0.8 },
|
|
{ url: `${SITE_URL}/faq`, lastModified: new Date(), changeFrequency: "monthly" as const, priority: 0.7 },
|
|
{ url: `${SITE_URL}/contact`, lastModified: new Date(), changeFrequency: "monthly" as const, priority: 0.6 },
|
|
];
|
|
|
|
const experiencePages = experiences.map((exp) => ({
|
|
url: `${SITE_URL}/experiences/${exp.slug}`,
|
|
lastModified: new Date(),
|
|
changeFrequency: "weekly" as const,
|
|
priority: 0.9,
|
|
}));
|
|
|
|
const blogPages = blogPosts.map((post) => ({
|
|
url: `${SITE_URL}/blog/${post.slug}`,
|
|
lastModified: new Date(post.date),
|
|
changeFrequency: "monthly" as const,
|
|
priority: 0.7,
|
|
}));
|
|
|
|
return [...staticPages, ...experiencePages, ...blogPages];
|
|
}
|