vuepress-plugin-sitemap
Sitemap generator plugin for vuepress.
Install
-
Yarn
yarn add vuepress-plugin-sitemap -
NPM
npm install vuepress-plugin-sitemap
in v2.0.0, dependencies except
sitemap
are moved to peerDependencies so we need to installesm
module manually (chalk
andcommander
are already installed byvuepress
) when we use this plugin with cli method.
Usage
Vuepress v1.x
// .vuepress/config.jsmoduleexports = plugins: 'sitemap': hostname: 'https://pake.web.id'
Vuepress v0.x
There's no plugin supported with Vuepress v0.x so we need to run it after the build process manually (or with npm postbuild
script).
-
Manual
./node_modules/.bin/vuepress -d "dist"./node_modules/.bin/vuepress-sitemap -H "https://pake.web.id" -d "dist" -
NPM Script
Options
hostname: type: string required: true default: null description: website root url example: https://pake.web.id outFile: type: string required: false default: sitemap.xml description: sitemap file name example: sitemap.txt urls: type: array required: false default: [], description: custom urls to append example: [ { url: '/place', changefreq: 'montly'} ] exclude: type: array required: false default: [], description: pages path to exclude example: ['/404.html'] dateFormatter: type: function required: false description: change the date format default: time => new Date(time).toISOString()
Frontmatter Options
To override global option for a specific page, we can use sitemap
key on the frontmatter,
currently we just have 2 options, they are exclude
and changefreq
.
Example
---sitemap: exclude: false changefreq: hourly---# Content Updated Frequently
Note:
Other options of sitemap can be used, all options passed except urls
, hostname
, cacheTime
, xslUrl
, xmlNs
and outFile
will be passed to sitemap.createSitemap
constructor.