import productSearchApi from '@/lib/product/api/productSearchApi'; import { create } from 'xmlbuilder'; import _ from 'lodash-contrib'; import axios from 'axios'; export async function getServerSideProps({ res }) { const baseUrl = process.env.SELF_HOST + '/sitemap/searchkey'; const limit = 5000; const keywords = await axios( `${process.env.NEXT_PUBLIC_SELF_HOST}/api/shop/searchkey?limit=${limit}&all=1`, ); // console.log(keywords); const pageCount = Math.ceil(keywords.data.response.numFound / limit); const pages = Array.from({ length: pageCount }, (_, i) => i + 1); const sitemapIndex = create('sitemapindex', { encoding: 'UTF-8' }).att( 'xmlns', 'http://www.sitemaps.org/schemas/sitemap/0.9', ); const date = new Date(); // const date = '2025-10-30'; pages.forEach((page) => { const sitemap = sitemapIndex.ele('sitemap'); sitemap.ele('loc', `${baseUrl}/${page}.xml`); sitemap.ele('lastmod', date.toISOString().slice(0, 10)); }); res.setHeader('Content-Type', 'text/xml'); res.write(sitemapIndex.end()); res.end(); return { props: {} }; } export default function SitemapProducts() { return null; }