vite-ssg-sitemap
Sitemap generator working with vite-ssg using sitemap-ts
Getting Started
Vue
Install:
npm install -D vite-ssg
npm install -D vite-ssg-sitemap
Vite config
Add to your vite.config.js
:
import generateSitemap from 'vite-ssg-sitemap'
export default {
plugins: [
Vue(),
],
ssgOptions: {
onFinished() { generateSitemap() },
},
}
Now, run npm build
and this will generate sitemap.xml and robots.txt files on your dist folder.
hostname
-
Type:
string
-
Default:
'http://localhost/'
Base URI.
dynamicRoutes
-
Type:
string[]
-
Default:
[]
Array of strings with manual dynamic routes.
export default {
plugins: [
Vue(),
],
ssgOptions: {
onFinished() {
const users = await api.get('/users')
const dynamicRoutes = users.map(user => `/users/${user.name}`)
generateSitemap({ dynamicRoutes })
},
},
}
exclude
-
Type:
string[]
-
Default:
[]
Array of strings with excluded routes.
export default {
plugins: [
Vue(),
],
ssgOptions: {
onFinished() {
generateSitemap({
exclude: ['/admin', '/private']
})
},
},
}
You can find a working example in example folder.
externalSitemaps
-
Type:
string[]
-
Default:
[]
Array of strings with other sitemaps paths or urls.
generateSitemap({
externalSitemaps: ['sitemap_1', 'sitemap_2', 'subpath/sitemap_3', 'https://site.com/sitemap.xml']
})
outDir
-
Type:
string
-
Default:
'dist'
Output directory.
extensions
-
Type:
string | string[]
-
Default:
'html'
File extensions that need to be generated. Example: ['html', 'md']
changefreq
-
Type:
string | RoutesOptionMap<string>
-
Default:
'daily'
Change frequency option for sitemap.
priority
-
Type:
number | RoutesOptionMap<number>
-
Default:
1
Priority option for sitemap.
lastmod
-
Type:
Date | RoutesOptionMap<Date>
-
Default:
new Date()
Last modification option for sitemap.
RoutesOptionMap<Type>
-
Type:
{ [route: string]: Type }
Used for changing changefreq
, priority
, or lastmod
on a by-route level.
The (optional) route '*'
is used as default.
readable
-
Type:
boolean
-
Default:
false
Converts XML into a human readable format
generateRobotsTxt
-
Type:
boolean
-
Default:
true
Enables robots.txt file generation
robots
-
Type:
RobotOption[]
-
Default:
[{ userAgent: '*', allow: '/' }]
RobotOption:
-
userAgent:
string
-
allow?:
string | string[]
-
disallow?:
string | string[]
-
crawlDelay?:
number
-
cleanParam?:
string
License
MIT License © 2022 jbaubree