diff --git a/docusaurus/docs/key-concepts/plugin-types-usage.md b/docusaurus/docs/key-concepts/plugin-types-usage.md
index 079102a6e8..34a078a4ae 100644
--- a/docusaurus/docs/key-concepts/plugin-types-usage.md
+++ b/docusaurus/docs/key-concepts/plugin-types-usage.md
@@ -30,7 +30,9 @@ Grafana plugin development allows for many options depending on the type of user
- **Data-source plugin** - a connection to a new database or other source of data.
- **App plugin** - an integrated out-of-the-box experience.
-Refer to [Get started](../get-started.md) for instructions on how to quickly scaffold [each type](../reference/cli-commands.mdx#select-a-plugin-type) of plugin.
+Refer to [Get started](../get-started.md) for instructions on how to quickly scaffold [each type](../reference/cli-commands.mdx#cli-commands-select-plugin) of plugin.
+
+HERE
:::note
@@ -88,7 +90,7 @@ Note that a plugin of type `datasource` must be installed before it can be provi
### Bundling of dashboards
-Data-source plugins can [include dashboards](../reference/metadata.md#includes) by referencing dashboard JSON files (including `property` and `type=dashboard`) within the `plugin.json` file. Grafana puts a dashboard in the `General` folder when it is imported.
+Data-source plugins can [include dashboards](../reference/metadata.md#metadata-includes) by referencing dashboard JSON files (including `property` and `type=dashboard`) within the `plugin.json` file. Grafana puts a dashboard in the `General` folder when it is imported.
## App plugins
@@ -122,7 +124,7 @@ Note that the plugin must be installed before provisioning can succeed with a `p
### Bundling of apps
-The app plugin type allows you to [nest other plugins inside it](../how-to-guides/app-plugins/work-with-nested-plugins); in other words, to bundle or [include](../reference/metadata.md#includes) multiple plugins in the same package.
+The app plugin type allows you to [nest other plugins inside it](../how-to-guides/app-plugins/work-with-nested-plugins); in other words, to bundle or [include](../reference/metadata.md#metadata-includes) multiple plugins in the same package.
### Bundling of dashboards
diff --git a/docusaurus/docs/migration-guides/update-from-grafana-versions/v7.x-v8.x.md b/docusaurus/docs/migration-guides/update-from-grafana-versions/v7.x-v8.x.md
index 0a9c1eccb9..1da56fbac2 100644
--- a/docusaurus/docs/migration-guides/update-from-grafana-versions/v7.x-v8.x.md
+++ b/docusaurus/docs/migration-guides/update-from-grafana-versions/v7.x-v8.x.md
@@ -199,7 +199,7 @@ import { cx, css } from '@emotion/css';
## Update needed for app plugins using dashboards
-To make side navigation work properly - app plugins targeting Grafana `8.+` and integrating into the side menu via [addToNav](/reference/metadata.md#includes) property need to adjust their `plugin.json` and all dashboard json files to have a matching `uid`.
+To make side navigation work properly - app plugins targeting Grafana `8.+` and integrating into the side menu via [addToNav](/reference/metadata.md#metadata-includes) property need to adjust their `plugin.json` and all dashboard json files to have a matching `uid`.
**`plugin.json`**
diff --git a/docusaurus/docs/reference/cli-commands.mdx b/docusaurus/docs/reference/cli-commands.mdx
index bae3924871..f34c058fc3 100644
--- a/docusaurus/docs/reference/cli-commands.mdx
+++ b/docusaurus/docs/reference/cli-commands.mdx
@@ -29,7 +29,7 @@ Use the `create-plugin` command to scaffold your plugin.
When running the `create-plugin` command, the following prompts appear:
-### Select a plugin type
+### Select a plugin type {#cli-commands-select-plugin}
```
? Select a plugin type …
diff --git a/docusaurus/docs/reference/metadata.md b/docusaurus/docs/reference/metadata.md
index e918d71de6..294359eab0 100644
--- a/docusaurus/docs/reference/metadata.md
+++ b/docusaurus/docs/reference/metadata.md
@@ -36,7 +36,7 @@ The `plugin.json` file is required for all plugins. When Grafana starts, it scan
| [**enterpriseFeatures**](#enterprisefeatures) | `object` | Grafana Enterprise specific features
| |
| **executable** | `string` | The first part of the file name of the backend component executable. There can be multiple executables built for different operating system and architecture. Grafana will check for executables named `_<$GOOS>_<.exe for Windows>`, e.g. `plugin_linux_amd64`. Combination of $GOOS and $GOARCH can be found here: https://golang.org/doc/install/source#environment.
| |
| **hideFromList** | `boolean` | [internal only] Excludes the plugin from listings in Grafana's UI. Only allowed for `builtIn` plugins.
| |
-| [**includes**](#includes) | `object[]` | Resources to include in plugin.
| |
+| [**includes**](metadata.md#metadata-includes) | `object[]` | Resources to include in plugin.
| |
| **logs** | `boolean` | For data source plugins, if the plugin supports logs. It may be used to filter logs only features.
| |
| **metrics** | `boolean` | For data source plugins, if the plugin supports metric queries. Used to enable the plugin in the panel editor.
| |
| **multiValueFilterOperators** | `boolean` | For data source plugins, if the plugin supports multi value operators in adhoc filters.
| |
@@ -226,7 +226,7 @@ Grafana Enterprise specific features
-## includes\[\]
+## includes\[\] {#metadata-includes}
Resources to include in plugin.
diff --git a/docusaurus/docs/tutorials/build-an-app-plugin.md b/docusaurus/docs/tutorials/build-an-app-plugin.md
index 23a1a5781f..4dc7671e51 100644
--- a/docusaurus/docs/tutorials/build-an-app-plugin.md
+++ b/docusaurus/docs/tutorials/build-an-app-plugin.md
@@ -61,7 +61,7 @@ Now that you can view your app root page (page one in the example), try making a
## Add a page in the navigation menu
-To add pages to the navigation menu under your app menu item, modify the `plugin.json` file's [`includes` section](../reference/metadata.md#includes).
+To add pages to the navigation menu under your app menu item, modify the `plugin.json` file's [`includes` section](../reference/metadata.md#metadata-includes).
When you scaffold your plugin, the `create-plugin` tool adds some example pages to the navigation menu. Each example page follows a path such as `/a/%PLUGIN_ID%/PAGE_NAME`. Any requests sent to /a/%PLUGIN_ID%, for example, `/a/myorgid-simple-app/`, are routed to the root page of the app plugin. The root page is a React component that returns the content for a given route.
@@ -121,7 +121,7 @@ You don't need to register all your pages inside `includes` in your `plugin.json
:::tip
-You can limit which users have access to pages in the navigation menu by using the [`role`](/reference/plugin-json#includes) property.
+You can limit which users have access to pages in the navigation menu by using the [`role`](/reference/metadata.md#roles) property.
:::