diff --git a/docs/content/0.getting-started/0.introduction.md b/docs/content/0.getting-started/0.introduction.md
new file mode 100644
index 00000000..0c7049e1
--- /dev/null
+++ b/docs/content/0.getting-started/0.introduction.md
@@ -0,0 +1,15 @@
+---
+title: 'Nuxt Sitemap'
+description: 'Powerfully flexible XML Sitemaps that integrate seamlessly, for Nuxt.'
+navigation:
+ title: 'Introduction'
+---
+
+## Features
+
+- 🌴 Single /sitemap.xml or multiple /posts-sitemap.xml, /pages-sitemap.xml
+- 📊 Fetch your sitemap URLs from anywhere
+- 😌 Automatic lastmod, image discovery and best practice sitemaps
+- 🔄 SWR caching, route rules support
+- 🎨 Debug using the Nuxt DevTools integration or the XML Stylesheet
+- 🤝 Integrates seamlessly with Nuxt I18n and Nuxt Content
diff --git a/docs/content/0.getting-started/1.installation.md b/docs/content/0.getting-started/1.installation.md
index 6f7ead9f..e9a29d66 100644
--- a/docs/content/0.getting-started/1.installation.md
+++ b/docs/content/0.getting-started/1.installation.md
@@ -5,54 +5,25 @@ navigation:
title: 'Installation'
---
-1. Install `@nuxtjs/sitemap` dependency to your project:
+## Module Setup
-```bash
-npx nuxi@latest module add sitemap
-```
+:ModuleInstall{name="@nuxtjs/sitemap"}
-2. Set Site Config
+## Previewing Your Sitemap
-It's recommended to always set a canonical site URL to avoid duplicate content issues.
+After you've set up the module with the minimal config, you should be able to visit [`/sitemap.xml`](http://localhost:3000/sitemap.xml) to see the generated sitemap.
-You can set your site URL in [many ways](/site-config/guides/setting-site-config), the easiest is `nuxt.config` or `.env`:
+All pages preset are discovered from your [Application Sources](/sitemap/getting-started/data-sources), for dynamic URLs see [Dynamic URLs](/sitemap/guides/dynamic-urls).
-While optional, it's also recommended to set a `name` as this will be displayed on your sitemap.
+You can debug this further in Nuxt DevTools under the Sitemap tab.
-::code-group
+## Next Steps
-```ts [nuxt.config.ts]
-export default defineNuxtConfig({
- site: {
- url: 'https://example.com',
- name: 'My Awesome Website'
- },
-})
-```
+It's recommended to use this module with Nuxt Robots so that the sitemap paths are automatically added to your robots.txt file.
-```bash [.env]
-NUXT_PUBLIC_SITE_URL=https://example.com
-```
-::
+:ModuleCard{slug="robots" class="w-1/2"}
-Sitemap URLs will have their [trailing slashes](/nuxt-seo/guides/trailing-slashes) removed by default. If you want to keep them, you can set the `trailingSlash` option to `true`:
-
-```ts [nuxt.config.ts]
-export default defineNuxtConfig({
- site: {
- // optional: only if you have trailing slashes enabled
- trailingSlash: true
- },
-})
-```
-
-3. Preview your Sitemap
-
-After you've set up the module, if you visit `/sitemap.xml` you can see the generated sitemap.
-
-This has been generated with [Application Sources](/sitemap/getting-started/data-sources).
-
-4. Next Steps
+Other suggestions:
- You may want to add your own sources, see [Dynamic URLs](/sitemap/guides/dynamic-urls).
- Have 1000's of pages? Consider using [Multiple Sitemaps](/sitemap/guides/multi-sitemaps).
diff --git a/docs/content/0.getting-started/3.stackblitz.md b/docs/content/0.getting-started/3.stackblitz.md
deleted file mode 100644
index 5178e022..00000000
--- a/docs/content/0.getting-started/3.stackblitz.md
+++ /dev/null
@@ -1,15 +0,0 @@
----
-title: "Reproductions: Stackblitz"
-description: Create minimal reproductions for Nuxt Sitemap or just experiment with the module.
----
-
-You can use the Nuxt Sitemap Stackblitz playgrounds for either:
-- Playing around with the module in a sandbox environment
-- Making reproductions for issues (Learn more about [Why Reproductions are Required](https://antfu.me/posts/why-reproductions-are-required))
-
-## Stackblitz Playgrounds
-
-- [Dynamic URLs](https://stackblitz.com/edit/nuxt-starter-dyraxc?file=server%2Fapi%2F_sitemap-urls.ts)
-- [i18n](https://stackblitz.com/edit/nuxt-starter-jwuie4?file=app.vue)
-- [Manual Chunking](https://stackblitz.com/edit/nuxt-starter-umyso3?file=nuxt.config.ts)
-- [Nuxt Content Document Driven](https://stackblitz.com/edit/nuxt-starter-a5qk3s?file=nuxt.config.ts)
diff --git a/docs/content/0.getting-started/3.troubleshooting.md b/docs/content/0.getting-started/3.troubleshooting.md
new file mode 100644
index 00000000..0ecc8129
--- /dev/null
+++ b/docs/content/0.getting-started/3.troubleshooting.md
@@ -0,0 +1,59 @@
+---
+title: "Troubleshooting Nuxt Sitemap"
+description: Create minimal reproductions for Nuxt Sitemap or just experiment with the module.
+navigation:
+ title: 'Troubleshooting'
+---
+
+## Debugging
+
+### Nuxt DevTools
+
+The best tool for debugging is the Nuxt DevTools integration with Nuxt Sitemap.
+
+This will show you all of your sitemaps and the sources used to generate it.
+
+### Debug Endpoint
+
+If you prefer looking at the raw data, you can use the debug endpoint. This is only enabled in
+development unless you enable the `debug` option.
+
+Visit `/__sitemap__/debug.json` within your browser, this is the same data used by Nuxt DevTools.
+
+### Debugging Prerendering
+
+If you're trying to debug the prerendered sitemap, you should enable the `debug` option and check your output
+for the file `.output/public/__sitemap__/debug.json`.
+
+## Submitting an Issue
+
+When submitting an issue, it's important to provide as much information as possible.
+
+The easiest way to do this is to create a minimal reproduction using the Stackblitz playgrounds:
+
+- [Dynamic URLs](https://stackblitz.com/edit/nuxt-starter-dyraxc?file=server%2Fapi%2F_sitemap-urls.ts)
+- [i18n](https://stackblitz.com/edit/nuxt-starter-jwuie4?file=app.vue)
+- [Manual Chunking](https://stackblitz.com/edit/nuxt-starter-umyso3?file=nuxt.config.ts)
+- [Nuxt Content Document Driven](https://stackblitz.com/edit/nuxt-starter-a5qk3s?file=nuxt.config.ts)
+
+## Troubleshooting FAQ
+
+### Why is my browser not rendering the XML properly?
+
+When disabling the [XSL](/sitemap/guides/customising-ui#disabling-the-xls) (XML Stylesheet) in, the XML will
+be rendered by the browser.
+
+If you have a i18n integration, then it's likely you'll see your sitemap look raw text instead of XML.
+
+![Broken XML because of xhtml namespace.](/sitemap/formatting-error.png)
+
+This is a [browser bug](https://bugs.chromium.org/p/chromium/issues/detail?id=580033) in parsing the `xhtml` namespace which is required to add localised URLs to your sitemap.
+There is no workaround besides re-enabled the XSL.
+
+### Google Search Console shows Error when submitting my Sitemap?
+
+Seeing "Error" when submitting a new sitemap is common. This is because Google previously
+crawled your site for a sitemap and found nothing.
+
+If your sitemap is [validating](https://www.xml-sitemaps.com/validate-xml-sitemap.html) correctly, then you're all set.
+It's best to way a few days and check back. In nearly all cases, the error will resolve itself.
diff --git a/docs/content/0.getting-started/4.faq.md b/docs/content/0.getting-started/4.faq.md
deleted file mode 100644
index 5b3cb7a0..00000000
--- a/docs/content/0.getting-started/4.faq.md
+++ /dev/null
@@ -1,24 +0,0 @@
----
-title: FAQ
-description: Frequently asked questions about Nuxt Sitemap.
----
-
-## Why is my browser not rendering the XML properly?
-
-When disabling the [XSL](/sitemap/guides/customising-ui#disabling-the-xls) (XML Stylesheet) in, the XML will
-be rendered by the browser.
-
-If you have a i18n integration, then it's likely you'll see your sitemap look raw text instead of XML.
-
-![Broken XML because of xhtml namespace.](/sitemap/formatting-error.png)
-
-This is a [browser bug](https://bugs.chromium.org/p/chromium/issues/detail?id=580033) in parsing the `xhtml` namespace which is required to add localised URLs to your sitemap.
-There is no workaround besides re-enabled the XSL.
-
-## Google Search Console shows Error when submitting my Sitemap?
-
-Seeing "Error" when submitting a new sitemap is common. This is because Google previously
-crawled your site for a sitemap and found nothing.
-
-If your sitemap is [validating](https://www.xml-sitemaps.com/validate-xml-sitemap.html) correctly, then you're all set.
-It's best to way a few days and check back. In nearly all cases, the error will resolve itself.
diff --git a/docs/content/0.getting-started/_dir.yml b/docs/content/0.getting-started/_dir.yml
deleted file mode 100644
index bcd2ba14..00000000
--- a/docs/content/0.getting-started/_dir.yml
+++ /dev/null
@@ -1 +0,0 @@
-title: Getting Started
diff --git a/docs/content/1.integrations/2.robots.md b/docs/content/1.integrations/2.robots.md
deleted file mode 100644
index 56dc80ee..00000000
--- a/docs/content/1.integrations/2.robots.md
+++ /dev/null
@@ -1,13 +0,0 @@
----
-title: Nuxt Robots
-description: How to use the Nuxt Robots module with Nuxt Content.
----
-
-The [@nuxtjs/robots](https://github.com/nuxt-modules/robots) module is useful for creating a dynamic runtime robots.txt file.
-
-## Setup
-
-The module will automatically handle the correct URL to add to the robots.txt, even when using
-multiple sitemaps.
-
-There are no extra steps needed.
diff --git a/docs/content/1.integrations/_dir.yml b/docs/content/1.integrations/_dir.yml
deleted file mode 100644
index 67b3de90..00000000
--- a/docs/content/1.integrations/_dir.yml
+++ /dev/null
@@ -1 +0,0 @@
-title: Integrations
diff --git a/docs/content/0.getting-started/2.data-sources.md b/docs/content/2.guides/0.data-sources.md
similarity index 100%
rename from docs/content/0.getting-started/2.data-sources.md
rename to docs/content/2.guides/0.data-sources.md
diff --git a/docs/content/2.guides/0.lastmod.md b/docs/content/2.guides/0.lastmod.md
deleted file mode 100644
index ea0a61e7..00000000
--- a/docs/content/2.guides/0.lastmod.md
+++ /dev/null
@@ -1,54 +0,0 @@
----
-title: Setting Lastmod
-description: Learn how to set the lastmod of your sitemap URLs.
----
-
-In some cases you'll want to set the `lastmod`, `changefreq`, or `priority` of your sitemap URLs. To
-do this, you have a few options depending on your setup.
-
-See [Best Practices](/sitemap/guides/best-practices) for details on how to optimize these values.
-
-## Page Meta
-
-Support for configuring these values through `definePageMeta` is coming soon.
-
-## Prerendering Lastmod
-
-When prerendering your site, you can make use of setting the `article:modified_time` meta tag in your page's head. This
-meta tag will be used as the `lastmod` value in your sitemap.
-
-```vue [pages/index.vue]
-
-```
-
-## Route Rules
-
-A more general approach is to use [Route rules](https://nuxt.com/docs/api/configuration/nuxt-config/#routerules).
-
-```ts [nuxt.config.ts]
-export default defineNuxtConfig({
- routeRules: {
- '/about': { sitemap: { changefreq: 'daily', priority: 0.3 } }
- }
-})
-```
-
-Alternatively, you can use the [defineRouteRules](https://nuxt.com/docs/api/utils/define-route-rules) helper on specific pages.
-
-```vue [pages/index.vue]
-
-```
-
-Using `defineRouteRules` feature is experimental and in order to use it you must enable the `experimental.inlineRouteRules` option in your nuxt.config.
diff --git a/docs/content/2.guides/1.multi-sitemaps.md b/docs/content/2.guides/0.multi-sitemaps.md
similarity index 100%
rename from docs/content/2.guides/1.multi-sitemaps.md
rename to docs/content/2.guides/0.multi-sitemaps.md
diff --git a/docs/content/1.integrations/0.i18n.md b/docs/content/2.guides/1.i18n.md
similarity index 86%
rename from docs/content/1.integrations/0.i18n.md
rename to docs/content/2.guides/1.i18n.md
index 663933dc..27806136 100644
--- a/docs/content/1.integrations/0.i18n.md
+++ b/docs/content/2.guides/1.i18n.md
@@ -1,14 +1,16 @@
---
-title: Nuxt I18n
-description: How to use the Nuxt Sitemap module with Nuxt I18n.
+title: I18n
+description: Setting up a sitemap with Nuxt I18n and Nuxt I18n Micro.
---
-Out of the box, the sitemap module will integrate directly with [@nuxtjs/i18n](https://i18n.nuxtjs.org/).
-You will need to use v8+ of the i18n module.
+## Introduction
-I18n configuration can get quite complicated, so it's important to figure out what mode you're using.
+Out of the box, the module integrates with [@nuxtjs/i18n](https://i18n.nuxtjs.org/) and [nuxt-i18n-micro](https://github.com/s00d/nuxt-i18n-micro)
+without any extra configuration.
-## Modes
+However, I18n is tricky, you may need to tinker with a few options to get the best results.
+
+## I18n Modes
### Automatic I18n Multi Sitemap
diff --git a/docs/content/2.guides/2.images-videos.md b/docs/content/2.guides/2.images-videos.md
index 1741e0e1..1c3848d6 100644
--- a/docs/content/2.guides/2.images-videos.md
+++ b/docs/content/2.guides/2.images-videos.md
@@ -1,6 +1,6 @@
---
-title: Images & Videos
-description: Learn how to add images and videos in your sitemap.
+title: Images, Videos, News
+description: Learn how to add images, videos and news in your sitemap.
---
Generated sitemaps are given the `image` and `video` namespaces by default. This allows you to add images and videos to your sitemap.
@@ -179,7 +179,48 @@ Each format would be added to your sitemap in the following format:
```
-## Opt-out
+## News
+
+To add news to your sitemap, you can use the `news` property on the sitemap entry. Only [Google's News sitemap](https://developers.google.com/search/docs/crawling-indexing/sitemaps/news-sitemap) extension is supported.
+
+The TypeScript interface for news is as follows:
+
+```ts
+export interface GoogleNewsEntry {
+ title: string
+ publication_date: Date | string
+ publication: {
+ name: string
+ language: string
+ }
+}
+```
+
+You can implement this as follows:
+
+```ts [nuxt.config.ts]
+export default defineNuxtConfig({
+ sitemap: {
+ urls: [
+ {
+ loc: '/news/nuxt-sitemap-turns-6',
+ news: [
+ {
+ title: 'Nuxt Sitemap Turns 6',
+ publication_date: '2021-01-01',
+ publication: {
+ name: 'Nuxt Sitemap',
+ language: 'en',
+ },
+ }
+ ]
+ }
+ ]
+ }
+})
+```
+
+## Image & Video Opt-out
To opt-out of this behaviour, you can set the `discoverImages` and `discoverVideos` config to `false` respectively.
@@ -191,3 +232,4 @@ export default defineNuxtConfig({
}
})
```
+
diff --git a/docs/content/2.guides/3.cache.md b/docs/content/2.guides/3.cache.md
deleted file mode 100644
index 158bb393..00000000
--- a/docs/content/2.guides/3.cache.md
+++ /dev/null
@@ -1,42 +0,0 @@
----
-title: Sitemap Caching
-description: Use the default cache engine to keep your sitemaps fast.
----
-
-Caching your sitemap can help reduce the load on your server and improve performance.
-
-By default, SWR caching is enabled on production environments and sitemaps will be cached for 10 minutes.
-
-This is configured by overriding your route rules and leveraging the native Nuxt caching.
-
-### Cache Time
-
-You can change the cache time by setting the `cacheMaxAgeSeconds` option.
-
-```ts
-export default defineNuxtConfig({
- sitemap: {
- cacheMaxAgeSeconds: 3600 // 1 hour
- }
-})
-```
-
-If you want to disable caching, set the `cacheMaxAgeSeconds` to `0`.
-
-### Cache Driver
-
-The cache engine is set to the Nitro default of the `cache/` path.
-
-If you want to customise the cache engine, you can set the `runtimeCacheStorage` option.
-
-```ts [nuxt.config.ts]
-export default defineNuxtConfig({
- sitemap: {
- // cloudflare kv binding example
- runtimeCacheStorage: {
- driver: 'cloudflare-kv-binding',
- binding: 'OG_IMAGE_CACHE'
- }
- }
-})
-```
diff --git a/docs/content/2.guides/0.filtering-urls.md b/docs/content/2.guides/3.filtering-urls.md
similarity index 76%
rename from docs/content/2.guides/0.filtering-urls.md
rename to docs/content/2.guides/3.filtering-urls.md
index 15c1a79e..13180550 100644
--- a/docs/content/2.guides/0.filtering-urls.md
+++ b/docs/content/2.guides/3.filtering-urls.md
@@ -3,18 +3,24 @@ title: Disabling Indexing
description: How to filter the URLs generated from application sources.
---
-When viewing your sitemap.xml for the first time, you may notice some URLs you don't want to be included.
+## Introduction
+When viewing your sitemap.xml for the first time, you may notice some URLs you don't want to be included.
These URLs are most likely coming from [Application Sources](/sitemap/getting-started/data-sources).
If you don't want to disable these sources but want to remove these URLs you have a couple of options.
-## Disabling Page Indexing
+## Nuxt Robots
-If you don't want a URL in your sitemap because you don't want search engines to crawl it,
-then you can make use of the `index` route rule.
+The easiest way to block search engines from indexing a URL is to use the [Nuxt Robots](/robots/getting-started/installation) module
+and simply block the URL in your robots.txt.
-To actually block search engines, you will need to use this with the [Nuxt Robots](/robots/getting-started/installation) module.
+Nuxt Sitemap will honour any blocked pages from being ignored in the sitemap.
+
+## Disabling indexing with Route Rules
+
+If you don't want a page in your sitemap because you don't want search engines to crawl it,
+then you can make use of the `robots` route rule.
### Disabling indexing for a pattern of URLs
@@ -29,12 +35,13 @@ export default defineNuxtConfig({
})
```
-### Disabling indexing for a Page
+### Inline route rules
-If you just have some specific pages, you can use the experimental [`defineRouteRules`](https://nuxt.com/docs/api/utils/define-route-rules)
+If you just have some specific pages, you can use the experimental [`defineRouteRules`](https://nuxt.com/docs/api/utils/define-route-rules), which must
+be enabled.
```vue
-
+```
+
+
+## Lastmod: Prerendering Hints
+
+When prerendering your site, you can make use of setting the `article:modified_time` meta tag in your page's head. This
+meta tag will be used as the `lastmod` value in your sitemap.
+
+```vue [pages/index.vue]
+
+```
diff --git a/docs/content/2.guides/4.route-rules.md b/docs/content/2.guides/4.route-rules.md
deleted file mode 100644
index cd2c2772..00000000
--- a/docs/content/2.guides/4.route-rules.md
+++ /dev/null
@@ -1,34 +0,0 @@
----
-title: Route Rules
-description: Configure your sitemap entries with route rules.
----
-
-To change the behaviour of your sitemap URLs, you can use [Route rules](https://nuxt.com/docs/api/configuration/nuxt-config/#routerules).
-
-When doing so, you can provide either `robots: false` as a shortcut or a full `sitemap` object, see [Sitemap URL Schema](/sitemap/api/schema).
-
-Either through your nuxt config file using pattern matching.
-
-```ts [nuxt.config.ts]
-export default defineNuxtConfig({
- routeRules: {
- // Don't add any /secret/** URLs to the sitemap.xml
- '/secret/**': { robots: false },
- // modify the sitemap.xml entry for specific URLs
- '/about': { sitemap: { changefreq: 'daily', priority: 0.3 } }
- }
-})
-```
-
-Alternatively, you can use the `defineRouteRules` helper on specific pages.
-
-```vue [pages/index.vue]
-
-```
diff --git a/docs/content/1.integrations/1.content.md b/docs/content/2.guides/5.content.md
similarity index 100%
rename from docs/content/1.integrations/1.content.md
rename to docs/content/2.guides/5.content.md
diff --git a/docs/content/2.guides/5.prerendering.md b/docs/content/2.guides/5.prerendering.md
index fe0b27bb..281d686b 100644
--- a/docs/content/2.guides/5.prerendering.md
+++ b/docs/content/2.guides/5.prerendering.md
@@ -3,6 +3,8 @@ title: Nuxt Prerendering
description: Perender your pages and have them all automatically added to your sitemap.
---
+## Introduction
+
When prerendering routes using Nuxt through either `nuxi generate` or using the prerender options, the module
will extract data from the generated HTML and add it to the sitemap.
diff --git a/docs/content/2.guides/7.debugging.md b/docs/content/2.guides/7.debugging.md
deleted file mode 100644
index dc6bfe3d..00000000
--- a/docs/content/2.guides/7.debugging.md
+++ /dev/null
@@ -1,24 +0,0 @@
----
-title: Debugging
-description: How to debug the sitemap generated from Nuxt Sitemap.
----
-
-It's quite likely at some point you'll open your sitemap and think "this isn't right".
-
-## Nuxt DevTools
-
-The best tool for debugging is the Nuxt DevTools integration with Nuxt Sitemap.
-
-This will show you all of your sitemaps and the sources used to generate it.
-
-## Debug Endpoint
-
-If you prefer looking at the raw data, you can use the debug endpoint. This is only enabled in
-development unless you enable the `debug` option.
-
-Visit `/__sitemap__/debug.json` within your browser, this is the same data used by Nuxt DevTools.
-
-## Debugging Prerendering
-
-If you're trying to debug the prerendered sitemap, you should enable the `debug` option and check your output
-for the file `.output/public/__sitemap__/debug.json`.
diff --git a/docs/content/2.guides/8.best-practices.md b/docs/content/2.guides/8.best-practices.md
index dd7b1e17..d4ee7b9b 100644
--- a/docs/content/2.guides/8.best-practices.md
+++ b/docs/content/2.guides/8.best-practices.md
@@ -5,53 +5,6 @@ navigation:
title: Best Practices
---
-## Performance
-
-When dealing with many URLs that are being generated from an external API, the best option is use the `sitemaps`
-option to create [Named Sitemap Chunks](/sitemap/guides/multi-sitemaps).
-
-Each sitemap should contain its own `sources`, this allows other sitemaps to be generated without waiting for this request.
-
-```ts
-export default defineNuxtConfig({
- sitemap: {
- sitemaps: {
- posts: {
- sources: [
- 'https://api.something.com/urls'
- ]
- },
- },
- },
-})
-```
-
-If you need to split this up further, you should consider chunking by the type and some pagination format. For example,
-you can paginate by when posts were created.
-
-```ts
-export default defineNuxtConfig({
- sitemap: {
- sitemaps: {
- posts2020: {
- sources: [
- 'https://api.something.com/urls?filter[yearCreated]=2020'
- ]
- },
- posts2021: {
- sources: [
- 'https://api.something.com/urls?filter[yearCreated]=2021'
- ]
- },
- },
- },
-})
-```
-
-Additionally, you may want to consider the following experimental options that may help with performance:
-- `experimentalCompression` - Gzip's and streams the sitemap
-- `experimentalWarmUp` - Creates the sitemaps when Nitro starts
-
## Set appropriate lastmod
The `lastmod` field is used to indicate when a page was last updated. This is used by search engines to determine how often to crawl your site.
diff --git a/docs/content/2.guides/9.submitting-sitemap.md b/docs/content/2.guides/9.submitting-sitemap.md
index 4f66e0a7..134f8572 100644
--- a/docs/content/2.guides/9.submitting-sitemap.md
+++ b/docs/content/2.guides/9.submitting-sitemap.md
@@ -3,6 +3,8 @@ title: 'Submitting Your Sitemap'
description: 'How to submit your sitemap to Google Search Console to start getting indexed.'
---
+## Introduction
+
When going live with a new site and you're looking to get indexed by Google, the best starting point is
to submit your sitemap to Google Search Console.
diff --git a/docs/content/2.guides/_dir.yml b/docs/content/2.guides/_dir.yml
deleted file mode 100644
index e9454921..00000000
--- a/docs/content/2.guides/_dir.yml
+++ /dev/null
@@ -1 +0,0 @@
-title: Guides
diff --git a/docs/content/4.api/_dir.yml b/docs/content/4.api/_dir.yml
deleted file mode 100644
index 91864357..00000000
--- a/docs/content/4.api/_dir.yml
+++ /dev/null
@@ -1 +0,0 @@
-title: Nuxt API
diff --git a/docs/content/4.api/schema.md b/docs/content/4.api/schema.md
deleted file mode 100644
index b019baf5..00000000
--- a/docs/content/4.api/schema.md
+++ /dev/null
@@ -1,94 +0,0 @@
----
-title: Schema
-description: The schema for some of the sitemap module data.
----
-
-## Sitemap Entry
-
-The sitemap entry schema mostly follows the [sitemap specification](https://www.sitemaps.org/protocol.html), with additional Sitemap extension recommendations from Google such as [News](https://developers.google.com/search/docs/crawling-indexing/sitemaps/news-sitemap), [Images](https://developers.google.com/search/docs/crawling-indexing/sitemaps/image-sitemaps), and [Videos](https://developers.google.com/search/docs/crawling-indexing/sitemaps/video-sitemaps).
-
-The following options are supported:
-
-- `loc` - URL of the page.
-- `lastmod` - The date of last modification of the file
-- `changefreq` - How frequently the page is likely to change.
-- `priority` - The priority of this URL relative to other URLs on your site.
-- `alternatives` - An array of alternatives to include in the sitemap entry as ``.
-- `news` - An array of news to include in the sitemap entry as ``.
-- `images` - An array of images to include in the sitemap entry as ``.
-- `video` - An array of videos to include in the sitemap entry as ``.
-
-```ts
-export interface SitemapUrl {
- loc: string
- lastmod?: string | Date
- changefreq?: Changefreq
- priority?: 0 | 0.1 | 0.2 | 0.3 | 0.4 | 0.5 | 0.6 | 0.7 | 0.8 | 0.9 | 1
- alternatives?: Array
- news?: GoogleNewsEntry
- images?: Array
- videos?: Array
- _i18nTransform?: boolean
- _sitemap?: string
- url?: string // @deprecated use `loc`
-}
-
-export type Changefreq =
- | 'always'
- | 'hourly'
- | 'daily'
- | 'weekly'
- | 'monthly'
- | 'yearly'
- | 'never'
-
-export interface AlternativeEntry {
- hreflang: string
- href: string | URL
-}
-
-export interface GoogleNewsEntry {
- title: string
- publication_date: Date | string
- publication: {
- name: string
- language: string
- }
-}
-
-export interface ImageEntry {
- loc: string | URL
- caption?: string
- geoLocation?: string
- title?: string
- license?: string | URL
-}
-
-export interface VideoEntry {
- title: string
- thumbnail_loc: string | URL
- description: string
- content_loc?: string | URL
- player_loc?: string | URL
- duration?: number
- expiration_date?: Date | string
- rating?: number
- view_count?: number
- publication_date?: Date | string
- family_friendly?: 'yes' | 'no' | boolean
- restriction?: Restriction
- platform?: Platform
- price?: ({
- price?: number | string
- currency?: string
- type?: 'rent' | 'purchase' | 'package' | 'subscription'
- })[]
- requires_subscription?: 'yes' | 'no' | boolean
- uploader?: {
- uploader: string
- info?: string | URL
- }
- live?: 'yes' | 'no' | boolean
- tag?: string | string[]
-}
-```
diff --git a/docs/content/5.nitro-api/_dir.yml b/docs/content/5.nitro-api/_dir.yml
deleted file mode 100644
index dd231477..00000000
--- a/docs/content/5.nitro-api/_dir.yml
+++ /dev/null
@@ -1 +0,0 @@
-title: Nitro API
diff --git a/docs/content/5.releases/v6.md b/docs/content/5.releases/5.v6.md
similarity index 100%
rename from docs/content/5.releases/v6.md
rename to docs/content/5.releases/5.v6.md
diff --git a/docs/content/5.releases/v5.md b/docs/content/5.releases/6.v5.md
similarity index 100%
rename from docs/content/5.releases/v5.md
rename to docs/content/5.releases/6.v5.md
diff --git a/docs/content/5.releases/v4.md b/docs/content/5.releases/7.v4.md
similarity index 100%
rename from docs/content/5.releases/v4.md
rename to docs/content/5.releases/7.v4.md
diff --git a/docs/content/5.releases/v3.md b/docs/content/5.releases/8.v3.md
similarity index 100%
rename from docs/content/5.releases/v3.md
rename to docs/content/5.releases/8.v3.md
diff --git a/docs/content/5.releases/_dir.yml b/docs/content/5.releases/_dir.yml
deleted file mode 100644
index 21e6ce54..00000000
--- a/docs/content/5.releases/_dir.yml
+++ /dev/null
@@ -1 +0,0 @@
-title: Releases