Aller au contenu principal
Version: 2.0.0-beta.5 🚧

📦 plugin-client-redirects

Plugin Docusaurus pour générer les redirections côté client.

Ce plugin écrirera des pages HTML supplémentaires sur votre site statique, qui redirige l'utilisateur vers vos pages Docusaurus existantes avec JavaScript.

note

Ce plugin ne crée que des redirections pour la version de production.

caution

Il est préférable d'utiliser les redirections côté serveur chaque fois que cela est possible.

Avant d'utiliser ce plugin, vous devez vérifier si votre fournisseur d'hébergement n'offre pas cette fonctionnalité.

Installation#

npm install --save @docusaurus/plugin-client-redirects

Configuration#

Cas d'utilisation principal : vous avez /myDocusaurusPage et vous souhaitez rediriger vers cette page à partir de /myDocusaurusPage.html :

docusaurus.config.js
module.exports = {  plugins: [    [      '@docusaurus/plugin-client-redirects',      {        fromExtensions: ['html'],      },    ],  ],};

Deuxième cas d'utilisation : vous avez /myDocusaurusPage.html et vous souhaitez rediriger vers cette page à partir de /myDocusaurusPage.

docusaurus.config.js
module.exports = {  plugins: [    [      '@docusaurus/plugin-client-redirects',      {        toExtensions: ['html'],      },    ],  ],};

Pour une logique de redirection personnalisée, fournissez votre propre fonction createRedirects.

Imaginons que vous changiez l'URL d'une page existante, vous voudrez peut-être vous assurer que l'ancienne URL fonctionne toujours :

docusaurus.config.js
module.exports = {  plugins: [    [      '@docusaurus/plugin-client-redirects',      {        redirects: [          {            to: '/docs/newDocPath', // string            from: ['/docs/oldDocPathFrom2019', '/docs/legacyDocPathFrom2016'], // string | string[]          },        ],      },    ],  ],};

Il est possible d'utiliser une fonction pour créer les redirections pour chaque chemin existant :

docusaurus.config.js
module.exports = {  plugins: [    [      '@docusaurus/plugin-client-redirects',      {        createRedirects: function (existingPath) {          if (existingPath === '/docs/newDocPath') {            return ['/docs/oldDocPathFrom2019', '/docs/legacyDocPathFrom2016']; // string | string[]          }        },      },    ],  ],};

Enfin, il est possible d'utiliser toutes les options en même temps :

docusaurus.config.js
module.exports = {  plugins: [    [      '@docusaurus/plugin-client-redirects',      {        fromExtensions: ['html', 'htm'],        toExtensions: ['exe', 'zip'],        redirects: [          {            to: '/docs/newDocPath',            from: '/docs/oldDocPath',          },        ],        createRedirects: function (existingPath) {          if (existingPath === '/docs/newDocPath2') {            return ['/docs/oldDocPath2'];          }        },      },    ],  ],};