Files
manoon-headless/src/app/sitemap.ts
2026-03-06 16:34:00 +02:00

51 lines
1.2 KiB
TypeScript

import { MetadataRoute } from "next";
import { getProducts } from "@/lib/woocommerce";
export default async function sitemap(): Promise<MetadataRoute.Sitemap> {
const baseUrl = process.env.NEXT_PUBLIC_SITE_URL || "https://dev.manoonoils.com";
let products: any[] = [];
try {
products = await getProducts();
} catch (e) {
console.log('Failed to fetch products for sitemap during build');
}
const productUrls = products
.filter((p) => p.status === "publish")
.map((product) => ({
url: `${baseUrl}/products/${product.slug}`,
lastModified: new Date(),
changeFrequency: "weekly" as const,
priority: 0.8,
}));
return [
{
url: baseUrl,
lastModified: new Date(),
changeFrequency: "daily",
priority: 1,
},
{
url: `${baseUrl}/products`,
lastModified: new Date(),
changeFrequency: "daily",
priority: 0.9,
},
{
url: `${baseUrl}/about`,
lastModified: new Date(),
changeFrequency: "monthly",
priority: 0.6,
},
{
url: `${baseUrl}/contact`,
lastModified: new Date(),
changeFrequency: "monthly",
priority: 0.6,
},
...productUrls,
];
}