vite-ssg-sitemap
TypeScript icon, indicating that this package has built-in type declarations

0.6.1 • Public • Published

vite-ssg-sitemap

npm version monthly downloads types license CI

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

Readme

Keywords

none

Package Sidebar

Install

npm i vite-ssg-sitemap

Weekly Downloads

4,639

Version

0.6.1

License

MIT

Unpacked Size

690 kB

Total Files

6

Last publish

Collaborators

  • jbaubree