-
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathgenerate-sitemap.js
37 lines (31 loc) · 1.1 KB
/
generate-sitemap.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
// Import the necessary modules
const fs = require('fs');
const { SitemapStream, streamToPromise } = require('sitemap');
// Your Next.js routes (you may need to adjust this depending on your project structure)
const routes = [
'/',
'/blog',
'/about',
'/projects', // Add more routes as needed
'/research', // Add more routes as needed
'/stats', // Add more routes as needed
'/tools', // Add more routes as needed
'/links', // Add more routes as needed
'/spotify', // Add more routes as needed
];
// Function to generate the sitemap
async function generateSitemap() {
const sitemap = new SitemapStream({ hostname: 'https://yuricunha.com/' }); // Replace with your website URL
// Add each route to the sitemap
routes.forEach((route) => {
sitemap.write({ url: route, changefreq: 'daily', priority: 0.7 });
});
sitemap.end();
// Return the sitemap as a string
return streamToPromise(sitemap);
}
// Generate the sitemap and save it to a file
generateSitemap().then((sitemap) => {
fs.writeFileSync('./public/sitemap.xml', sitemap);
console.log('Sitemap generated successfully!');
});