This plugin allows a user to manage redirects from the admin panel.
This plugin provides a convenient way to manage URL redirects within a dedicated collection type in Strapi, catering to the headless nature of the CMS. While it does not automatically handle redirects on the server side, it offers a structured endpoint from which frontend applications can fetch redirect rules and implement redirection logic as needed. This approach empowers developers and content managers to seamlessly integrate and manage redirect rules, enhancing SEO and user experience by leveraging the flexibility of Strapi's headless architecture.
From
), the destination URL (To
), and the redirect type (Type
).api/redirects
endpoint as a JSON object. This endpoint is accessible to authenticated users with the appropriate permissions, enabling easy integration with your frontend.npm install strapi-plugin-redirects
or yarn add strapi-plugin-redirects
1module.exports = ({ env }) => ({
2 // Other plugin configurations...
3 redirects: {
4 enabled: true,
5 },
6});
Redirects
section within the plugins area.Add New Redirect
and fill in the To
, From
, and Type
fields accordingly.api/redirects
endpoint.api/redirects
. The response will be a JSON object listing all configured redirects.You can import redirects in bulk by uploading a CSV file with from
, to
, and type
headers. Both relative and absolute paths are supported for maximum flexibility, and specifying permanent
or temporary
in the type
field correctly maps to the respective redirect type.
This plugin is ideal for content editors or SEO specialists managing redirects in a headless CMS setup. Here's how you can integrate it with a Next.js project:
next.config.js
.Example script for fetching redirects:
1const redirects = () => {
2 return fetch('http://localhost:1337/redirects')
3 .then(res => res.json())
4 .then(response => {
5 // Use redirects however you need to
6 });
7};
8
9module.exports = redirects;
Incorporate the fetched redirects into next.config.js:
1const getRedirects = require('./redirects');
2
3module.exports = {
4 // Other configurations...
5 redirects: () => getRedirects(),
6};
Define your redirect types with clear descriptions, for instance:
This plugin is inspired by and extends the functionalities of the @webbio plugin by adding features like bulk import capabilities. Contributions in the form of translations, feature enhancements, and bug fixes are highly encouraged and appreciated.
We are particularly interested in expanding the plugin to include:
Feel free to reach out or submit pull requests on GitHub if you're interested in contributing to the development of this plugin.
This plugin is available under the MIT License. For more information, please refer to the LICENSE file in the repository.
npm install strapi-plugin-redirects
Check out the available plugin resources that will help you to develop your plugin or provider and get it listed on the marketplace.