@vuepress/plugin-html-redirect

A VuePress plugin to handle "redirection" with HTML.

Usage no npm install needed!

<script type="module">
  import vuepressPluginHtmlRedirect from 'https://cdn.skypack.dev/@vuepress/plugin-html-redirect';
</script>

README

@vuepress/plugin-html-redirect

NPM version NPM downloads Node.js CI

Feature

  • Support virtual URLs as source URLs.
  • Support countdown.
  • Work with static base and dynamic base.

Motivation

In the site development of vuepress, a small directory structure adjustment will invalidate some URLs, but these URLs may have been published. With this plugin, you can keep those disappeared URLs forever.

Install

yarn add -D @vuepress/plugin-html-redirect
# OR npm install -D @vuepress/plugin-html-redirect

Usage

  • Write redirects:

The agreed file to write redirects config is /path/to/.vuepress/redirects, whose format is as follows:

[url] [redirect_url]
[url] [redirect_url]
[url] [redirect_url]
...

example:

/2020/03/27/webpack-5-module-federation/ /translations/2020/03/27/webpack-5-module-federation/
  • Simple usage:
// .vuepress/config.js
module.exports = {
  plugins: [
    '@vuepress/html-redirect' // OR full name: '@vuepress/plugin-html-redirect'
  ]
}
  • Disable countdown:
// .vuepress/config.js
module.exports = {
  plugins: [
    ['@vuepress/html-redirect', {
        duration: 0
    }]
  ]
}

It means that the publc path will be different acccording to the NEV you set, and the router base will be '/' when the host is hostA, and '/blog/' when the host is hostB.

Options

duration

  • Type: string
  • Description: Control how many seconds the page will be redirected.

TODO

  • Support directory redirects.

PR welcome!

Contributing

  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -am 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request :D

Author

@vuepress/plugin-html-redirect © ULIVZ, Released under the MIT License.

github.com/ulivz · Twitter @_ulivz