diff --git a/create/redirects.mdx b/create/redirects.mdx index 752f008e5..8a3a025f7 100644 --- a/create/redirects.mdx +++ b/create/redirects.mdx @@ -21,6 +21,8 @@ Set up 301 redirects by adding the `redirects` field to your `docs.json` file. This permanently redirects `/source/path` to `/destination/path` so that you don't lose any previous SEO for the original page. +### Wildcard redirects + To match a wildcard path, use `*` after a parameter. In this example, `/beta/:slug*` matches `/beta/introduction` and redirects it to `/v2/introduction`. ```json @@ -32,22 +34,51 @@ To match a wildcard path, use `*` after a parameter. In this example, `/beta/:sl ] ``` - - The destination slug cannot match to the source slug. For example, if your docs are hosted at `/docs`, avoid: - ```json +### Partial wildcard redirects + +Use partial wildcards to match URL segments that start with a specific prefix. + +```json +"redirects": [ + { + "source": "/articles/concepts-*", + "destination": "/collections/overview" + } +] +``` + +This matches any URLs with the `/articles/concepts-` path, such as `/articles/concepts-getting-started` and `/articles/concepts-overview`, and redirects them all to `/collections/overview`. + +You can also substitute the captured wildcard value in the destination. + +```json +"redirects": [ + { + "source": "/old/article-*", + "destination": "/new/article-*" + } +] +``` + +This redirects `/old/article-123` to `/new/article-123`, preserving the captured value after the prefix. + +### Avoid infinite redirects + +To avoid infinite loops, the destination slug cannot match the source slug. For example, if your docs are hosted at `/docs`, avoid: + +```json +"redirects": [ { "source": "/docs/:slug*", "destination": "/:slug*" } - ``` - +] +``` -## Broken links +## Check for broken links -Catch broken links with our CLI. [Install the CLI](/installation) and run the command: +Find broken links with the [CLI](/installation). ```bash mint broken-links ``` - -The CLI identifies any relative links in your docs that don't exist.