vuepress-plugin-sitemap

Sitemap generator plugin for vuepress
239,097 94
Install
npm install vuepress-plugin-sitemap
Latest Version:2.3.1
License:MIT
Last Updated:Sep 20, 2023
Links: GitHub  ·  npm
Maintainer: ekoeryanto

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 install esm module manually (chalk and commander are already installed by vuepress) when we use this plugin with cli method.

Usage

Vuepress v1.x

// .vuepress/config.js
module.exports = {
  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).

  1. Manual

    ./node_modules/.bin/vuepress -d "dist"
    ./node_modules/.bin/vuepress-sitemap -H "https://pake.web.id" -d "dist"
    
  2. NPM Script

    {
      scripts: {
        build: "vuepress build docs -d dist",
        postbuild: "vuepress-sitemap -H https://pake.web.id -d dist"
      }
    }
    

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.

Related Plugins

Credits

Related Packages

@vuepress/plugin-nprogress

nprogress plugin for vuepress

3,258,429 22,716
@vuepress/plugin-active-header-links

active-header-links plugin for vuepress

3,218,918 22,716
@vuepress/theme-default

Default theme for VuePress

3,076,688 22,716
@vuepress/plugin-search

search plugin for vuepress

2,580,346 22,716
@vuepress/plugin-register-components

register-global-components plugin for vuepress

2,557,918 22,716

Version History

Version Released License
2.3.1 MIT
2.3.0 MIT
2.2.0 MIT
2.1.2 MIT
2.1.1 MIT
Pre-releases (3)
Version Released License
2.0.0-alpha.0 MIT
1.0.0-beta.0 MIT
1.0.0-alpha.0 MIT