feat: replace sitemap module with custom Nitro route (fixes baseURL /fr/ conflict)
This commit is contained in:
@@ -2,7 +2,6 @@ export default defineNuxtConfig({
|
|||||||
// https://github.com/nuxt-themes/docus
|
// https://github.com/nuxt-themes/docus
|
||||||
css: ['~/assets/css/extra.css'],
|
css: ['~/assets/css/extra.css'],
|
||||||
extends: ['@nuxt-themes/docus'],
|
extends: ['@nuxt-themes/docus'],
|
||||||
modules: ['@nuxtjs/sitemap'],
|
|
||||||
devtools: { enabled: false },
|
devtools: { enabled: false },
|
||||||
colorMode: {
|
colorMode: {
|
||||||
preference: 'dark',
|
preference: 'dark',
|
||||||
@@ -45,14 +44,5 @@ export default defineNuxtConfig({
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
site: {
|
|
||||||
url: 'https://docu.djeex.fr'
|
|
||||||
},
|
|
||||||
|
|
||||||
sitemap: {
|
|
||||||
autoLastmod: true,
|
|
||||||
urls: ['https://docu.djeex.fr/fr']
|
|
||||||
},
|
|
||||||
|
|
||||||
compatibilityDate: '2024-10-24'
|
compatibilityDate: '2024-10-24'
|
||||||
})
|
})
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
import { serverQueryContent } from '#content/server'
|
||||||
|
|
||||||
|
// generates /fr/sitemap.xml without @nuxtjs/sitemap (incompatible with baseURL /fr/)
|
||||||
|
export default defineEventHandler(async (event) => {
|
||||||
|
const docs = await serverQueryContent(event).find()
|
||||||
|
|
||||||
|
const urls = docs
|
||||||
|
.filter((doc: any) => doc._path && !doc._path.startsWith('/_'))
|
||||||
|
.map((doc: any) => ` <url><loc>https://docu.djeex.fr/fr${doc._path}</loc></url>`)
|
||||||
|
.join('\n')
|
||||||
|
|
||||||
|
const sitemap = `<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
|
||||||
|
${urls}
|
||||||
|
</urlset>`
|
||||||
|
|
||||||
|
setHeader(event, 'Content-Type', 'application/xml')
|
||||||
|
return sitemap
|
||||||
|
})
|
||||||
Reference in New Issue
Block a user