From 0e998cf62aeadfad090ce9e0a03bb2fa3f1ac915 Mon Sep 17 00:00:00 2001 From: sofietoft Date: Mon, 24 Mar 2025 11:05:36 +0100 Subject: [PATCH 1/2] 35 mins broken links --- .../extension-registry/extension-manifest.md | 18 +++++++++--------- .../extending-overview/extension-types/menu.md | 2 +- .../extension-types/sections/section-view.md | 2 +- .../build-on-umbraco-functionality.md | 2 +- .../extending/embedded-media-providers.md | 2 +- .../packages/good-practice-and-defaults.md | 2 +- .../block-editor/block-level-variance.md | 4 ++-- .../built-in-umbraco-property-editors/tags.md | 8 ++++---- .../fundamentals/backoffice/sections.md | 2 +- .../backoffice/settings-dashboards.md | 2 +- .../fundamentals/backoffice/variants.md | 2 +- .../fundamentals/data/adding-tabs.md | 8 ++++---- .../data/creating-media/default-media-types.md | 8 ++++---- .../defining-content/default-document-types.md | 4 ++-- .../document-type-localization.md | 2 +- .../design/templates/razor-cheatsheet.md | 2 -- .../reference/content-delivery-api/README.md | 2 +- .../README.md | 8 ++++---- .../management-api/external-access.md | 2 +- .../using-services/contentservice.md | 2 +- 15/umbraco-cms/reference/scheduling.md | 2 +- 15/umbraco-cms/reference/templating/macros.md | 2 +- .../reference/templating/mvc/partial-views.md | 4 ---- .../adding-language-variants.md | 2 +- .../tutorials/creating-an-xml-site-map.md | 2 +- .../umbraco-interface.md | 2 +- .../tutorials/multilanguage-setup.md | 2 +- .../lessons/4-help-and-community.md | 5 ++--- 28 files changed, 49 insertions(+), 56 deletions(-) diff --git a/15/umbraco-cms/customizing/extending-overview/extension-registry/extension-manifest.md b/15/umbraco-cms/customizing/extending-overview/extension-registry/extension-manifest.md index b5da3d41afa..e7a03f274e5 100644 --- a/15/umbraco-cms/customizing/extending-overview/extension-registry/extension-manifest.md +++ b/15/umbraco-cms/customizing/extending-overview/extension-registry/extension-manifest.md @@ -6,9 +6,9 @@ description: Learn about the different methods for declaring an Extension Manife The Extension Manifest is the first step for any extension. It is the declaration of what you want to register. -In this section you will find all the Extension Types provided by the Backoffice. [See all Extension Types here.](../extension-types/) +In this section you will find all the Extension Types provided by the Backoffice. [See all Extension Types here.](../extension-types/README.md) -### Extension Manifest Format +## Extension Manifest Format An Extension Manifest can be written as a JavaScript or JSON Object. @@ -25,7 +25,7 @@ const manifest = { The `type` defines what it is declaring. The `alias` is a unique identifier for this manifest. It must be globally unique, so make sure to prefix it with something that makes your extension unique. The `name` is a representational name of this manifest, this does not need to be unique but such can be beneficial when debugging extensions. -### Manifest Data +## Manifest Data Each Extension Manifest has to declare its type. This is used to determine where it hooks into the system. It also determines what data is required of this manifest. @@ -41,12 +41,12 @@ Additionally, many extensions support the use of the following fields: * `weight` - Define a weight, to determine the importance or visual order of this extension. The higher the weight, the higher in the list it will appear. * `overwrites` - Define one or more Extension Aliases that this extension should replace. Notice it only omits the listed Extensions when this is rendered in the same spot. [Read more in Replace, Exclude or Unregister](replace-exclude-or-unregister.md). -* `conditions` - Define one or more conditions that must be permitted for the extension to become available. [Extension Conditions](../extension-conditions/extension-conditions.md). +* `conditions` - Define one or more conditions that must be permitted for the extension to become available. [Extension Conditions](../extension-conditions.md). * `kind` - Define a kind-alias of which this manifest should be based upon. Kinds acts like a preset for your manifest. [Extension Kinds](../extension-kind.md). Many of the Extension Types require additional information declared as part of a `meta` field. -### Registration +## Registration An Extension Manifest can be registered in multiple ways. @@ -58,15 +58,15 @@ This enables you to locate your Manifests in files together with the implementat A typical structure would be to declare one or more `Bundle` extensions in the Package Manifest. Each of the Bundles points to a `manifests.js` file which declares the Extensions of interest. -#### The `bundle` extension type +### The `bundle` extension type The Bundle extension type is used to declare multiple Extension Manifests from a single JavaScript file. The Bundle is loaded at startup. All the Extension Manifests exported of the JavaScript file will be registered. -Read more about the `bundle` extension type in the [Bundle](../../../extending/extending-overview/extension-registry/bundle.md)[ ](../extension-types/bundle.md)article. +Read more about the `bundle` extension type in the [Bundle](../extension-types/bundle.md)article. -#### The `backofficeEntryPoint` extension type +### The `backofficeEntryPoint` extension type Run any JavaScript code when Backoffice startups, after the user is logged in. This can be used as an entry point for a package, registering more extensions or configuring your package. @@ -76,7 +76,7 @@ The entry point declares a single JavaScript file that will be loaded and run wh Read more about the `backofficeEntryPoint` extension type in the [Entry Point](extension-manifest.md#the-backofficeentrypoint-extension-type) article. -#### The `appEntryPoint` extension type +### The `appEntryPoint` extension type Similar as `appEntryPoint` this runs as startup, the difference is that this runs before the user is logged in. Use this to initiate things before the user is logged in or to provide things for the Login screen. diff --git a/15/umbraco-cms/customizing/extending-overview/extension-types/menu.md b/15/umbraco-cms/customizing/extending-overview/extension-types/menu.md index 533af4c5f91..393e93d1b85 100644 --- a/15/umbraco-cms/customizing/extending-overview/extension-types/menu.md +++ b/15/umbraco-cms/customizing/extending-overview/extension-types/menu.md @@ -33,7 +33,7 @@ We can create the manifest using JSON in the `umbraco-package.json`. The manifest can also be written in TypeScript. -For this TypeScript example we used a [Backoffice Entry Point](../../extending-overview/extension-types/backoffice-entry-point) extension to register the manifests. +For this TypeScript example we used a [Backoffice Entry Point](../../extending-overview/extension-types/backoffice-entry-point.md) extension to register the manifests. ```typescript import { ManifestMenu } from "@umbraco-cms/backoffice/extension-registry"; diff --git a/15/umbraco-cms/customizing/extending-overview/extension-types/sections/section-view.md b/15/umbraco-cms/customizing/extending-overview/extension-types/sections/section-view.md index cdb7b0950f4..0e83e85a43a 100644 --- a/15/umbraco-cms/customizing/extending-overview/extension-types/sections/section-view.md +++ b/15/umbraco-cms/customizing/extending-overview/extension-types/sections/section-view.md @@ -48,7 +48,7 @@ We can create the manifest using json in the `umbraco-package.json`. {% tab title="TypeScript" %} The manifest can also be written in TypeScript. -For this TypeScript example we used a [Backoffice Entry Point](../backoffice-entry-point/) extension to register the manifests. +For this TypeScript example we used a [Backoffice Entry Point](../backoffice-entry-point.md) extension to register the manifests. ```typescript import { ManifestSectionView } from "@umbraco-cms/backoffice/extension-registry"; diff --git a/15/umbraco-cms/extending/build-on-umbraco-functionality.md b/15/umbraco-cms/extending/build-on-umbraco-functionality.md index e90afc9df70..a32a1bc6c98 100644 --- a/15/umbraco-cms/extending/build-on-umbraco-functionality.md +++ b/15/umbraco-cms/extending/build-on-umbraco-functionality.md @@ -11,7 +11,7 @@ One of the biggest strengths of the Umbraco CMS is its flexibility. It is possib {% hint style="info" %} Are you looking to **customize and build extensions for the Umbraco backoffice?** -All articles related to customizing and extending the Umbraco backoffice have been moved to the [Customize the Backoffice](broken-reference) section. +All articles related to customizing and extending the Umbraco backoffice have been moved to the [Customize the Backoffice](../customizing/overview.md) section. {% endhint %} In this section, you can find resources to build and extend Umbraco CMS functionality. diff --git a/15/umbraco-cms/extending/embedded-media-providers.md b/15/umbraco-cms/extending/embedded-media-providers.md index 56e96f1025f..01978f63075 100644 --- a/15/umbraco-cms/extending/embedded-media-providers.md +++ b/15/umbraco-cms/extending/embedded-media-providers.md @@ -121,7 +121,7 @@ If your third-party media provider lacks OEmbed support or requires custom HTML ### Custom Embed Provider Example -Azure Media Services [(https://azure.microsoft.com/en-gb/services/media-services/)](https://azure.microsoft.com/en-gb/services/media-services/) provides 'broadcast-quality' video streaming services. You can embed the Azure Media Player into your site to play a video [using an IFrame](https://ampdemo.azureedge.net/azuremediaplayer.html). +Azure Media Services [(https://azure.microsoft.com/en-gb/services/media-services/)](https://azure.microsoft.com/en-gb/services/media-services/) provides 'broadcast-quality' video streaming services. You can embed the Azure Media Player into your site to play a video using an IFrame. You can create a custom `EmbedProvider` to embed an IFrame video player in your content. This can be done by taking the Media asset URL and writing out the required markup. diff --git a/15/umbraco-cms/extending/packages/good-practice-and-defaults.md b/15/umbraco-cms/extending/packages/good-practice-and-defaults.md index 2ef124b4ef8..d692b3ca0a1 100644 --- a/15/umbraco-cms/extending/packages/good-practice-and-defaults.md +++ b/15/umbraco-cms/extending/packages/good-practice-and-defaults.md @@ -12,7 +12,7 @@ This document provides guides and notes on package development. It includes good To extend the Umbraco backoffice, a package can provide files such as `umbraco-package.json` and TypeScript/JavaScript files that should be stored within the `App_Plugins` folder. It's recommended to put all files in a subfolder with a unique name, preferably using the package name, like `App_Plugins\MyPackage`. -For more information on how to extend the Umbraco backoffice, have a look at the [customizing the backoffice documentation](../../customizing/extend-and-customize-editing-experience.md) +For more information on how to extend the Umbraco backoffice, have a look at the [customizing the backoffice documentation](../../customizing/overview.md) Files in the `App_Plugins` folder will be publicly available on the website even though they are not in the `wwwroot` folder. You should not store sensitive information in the `App_Plugins` folder. diff --git a/15/umbraco-cms/fundamentals/backoffice/property-editors/built-in-umbraco-property-editors/block-editor/block-level-variance.md b/15/umbraco-cms/fundamentals/backoffice/property-editors/built-in-umbraco-property-editors/block-editor/block-level-variance.md index dbf4b51ad93..339e0404f8c 100644 --- a/15/umbraco-cms/fundamentals/backoffice/property-editors/built-in-umbraco-property-editors/block-editor/block-level-variance.md +++ b/15/umbraco-cms/fundamentals/backoffice/property-editors/built-in-umbraco-property-editors/block-editor/block-level-variance.md @@ -18,9 +18,9 @@ This is known as Block Level Variance: Block Level Variance is achieved when: -* The [Document Type](../../../../data/defining-content/default-document-types#document-type) is configured for variance, and +* The [Document Type](../../../../data/defining-content/default-document-types.md#document-type) is configured for variance, and * The Block Editor property is _not_ configured for variance, and -* The Block Editor property editor is configured to use [Element Types](../../../../data/defining-content/default-document-types#element-type) that _do_ vary. +* The Block Editor property editor is configured to use [Element Types](../../../../data/defining-content/default-document-types.md#element-type) that _do_ vary. ## The "unexposed" Block state diff --git a/15/umbraco-cms/fundamentals/backoffice/property-editors/built-in-umbraco-property-editors/tags.md b/15/umbraco-cms/fundamentals/backoffice/property-editors/built-in-umbraco-property-editors/tags.md index 98b380ebe40..ea4daff0403 100644 --- a/15/umbraco-cms/fundamentals/backoffice/property-editors/built-in-umbraco-property-editors/tags.md +++ b/15/umbraco-cms/fundamentals/backoffice/property-editors/built-in-umbraco-property-editors/tags.md @@ -10,7 +10,7 @@ The Tags property editor allows you to add multiple tags to a node. ## Data Type Definition Example -![Tags Data Type Definition Example](/14/umbraco-cms/fundamentals/backoffice/property-editors/built-in-umbraco-property-editors/images/tags-DataType.png) +![Tags Data Type Definition Example](images/tags-DataType.png) ### Tag group @@ -26,17 +26,17 @@ There are built-in property value converters, which means you don't need to worr ### CSV tags -![CSV tags example](../../../../../../10/umbraco-cms/fundamentals/backoffice/property-editors/built-in-property-editors/images/Csv-example-v8.png) +![CSV tags example](../built-in-property-editors/images/Csv-example-v8.png) ### JSON tags -![JSON tags example](../../../../../../10/umbraco-cms/fundamentals/backoffice/property-editors/built-in-property-editors/images/Json-example-v8.png) +![JSON tags example](../built-in-property-editors/images/Json-example-v8.png) ### Tags typeahead Whenever a tag has been added it will be visible in the typeahead when you start typing on other pages. -![Tags typeahead example](../../../../../../10/umbraco-cms/fundamentals/backoffice/property-editors/built-in-property-editors/images/Typeahead-v8.png) +![Tags typeahead example](../built-in-property-editors/images/Typeahead-v8.png) ## MVC View Example - displays a list of tags diff --git a/15/umbraco-cms/fundamentals/backoffice/sections.md b/15/umbraco-cms/fundamentals/backoffice/sections.md index 0367ecc1e85..53fac242ebc 100644 --- a/15/umbraco-cms/fundamentals/backoffice/sections.md +++ b/15/umbraco-cms/fundamentals/backoffice/sections.md @@ -75,7 +75,7 @@ For more information, see the [Packages](../../extending/packages/) article. The Users section allows administrators to manage user accounts, assign permissions, set user roles, and monitor user activity within the backoffice. It provides control over who can access and modify content, media, and settings in the CMS. -For more information, see the [Users](../data/users.md) article. +For more information, see the [Users](../data/users/README.md) article. ## Members diff --git a/15/umbraco-cms/fundamentals/backoffice/settings-dashboards.md b/15/umbraco-cms/fundamentals/backoffice/settings-dashboards.md index b846cd8d54d..edfc19505c0 100644 --- a/15/umbraco-cms/fundamentals/backoffice/settings-dashboards.md +++ b/15/umbraco-cms/fundamentals/backoffice/settings-dashboards.md @@ -14,7 +14,7 @@ The **Settings** section of the Umbraco backoffice has its own set of default da The Welcome dashboard is the first dashboard in the Settings section. Like all dashboards, it has a customizable view and links to different resources for developing your Umbraco website. -For more information about creating custom dashboards, see the [Dashboards](../../customizing/dashboards.md) article. +For more information about creating custom dashboards, see the [Dashboards](../../customizing/extending-overview/extension-types/dashboard.md) article. diff --git a/15/umbraco-cms/fundamentals/backoffice/variants.md b/15/umbraco-cms/fundamentals/backoffice/variants.md index 6d833364816..c908541958a 100644 --- a/15/umbraco-cms/fundamentals/backoffice/variants.md +++ b/15/umbraco-cms/fundamentals/backoffice/variants.md @@ -78,7 +78,7 @@ To read about how you render variant content in Templates, check out the [render Culture and hostnames must be added to your language sites before the content can be tested for variants: 1. Click **...** next to the Home node and select **Culture and Hostnames**. -2. Add a specific URL per language and save. For eg: An English language variant with English (United States) as the language can be given a specific URL [_https://yourwebsite.com/en-us_](https://yourwebsite.com/en-us) and a Danish language variant can be given a specific URL [_https://yourwebsite.com/dk_](https://yourwebsite.com/dk). +2. Add a specific URL per language and save. For eg: An English language variant with English (United States) as the language can be given a specific URL `https://yourwebsite.com/en-us` and a Danish language variant can be given a specific URL `https://yourwebsite.com/dk`. The Info content app should now show specific URLs for your language variants. diff --git a/15/umbraco-cms/fundamentals/data/adding-tabs.md b/15/umbraco-cms/fundamentals/data/adding-tabs.md index 0506dbd3a1d..b998fa4e8e6 100644 --- a/15/umbraco-cms/fundamentals/data/adding-tabs.md +++ b/15/umbraco-cms/fundamentals/data/adding-tabs.md @@ -13,7 +13,7 @@ To add a tab, follow these steps: 1. Go to **Settings**. 2. Create or select a **Document Type/Media Type/Member Type** and click **Add tab**. - ![Add tab](/14/umbraco-cms/fundamentals/data/images/Add-tab.png.png) + ![Add tab](images/Add-tab.png.png) {% hint style="info" %} When adding the first tab, all existing groups are automatically added to the tab. @@ -30,7 +30,7 @@ To reorder tabs, follow these steps: This is important when using compositions, as you want to always display a tab/group at a certain position by setting a manual numeric value. - ![Reorder tabs](../../../../10/umbraco-cms/fundamentals/data/images/Reorder-tabs.gif) + ![Reorder tabs](images/Reorder-tabs.gif) 5. Select **I am done reordering**. 6. Click **Save**. @@ -53,7 +53,7 @@ Converting a tab back into a group is not possible, as tabs can contain groups, Once you start adding tabs, you might see a “Generic” tab appear. This is done to hold groups and properties that are not assigned to a tab. For example, a group of properties coming from a composition that has no tab. In order to display the groups and properties correctly and have a solid data structure, they will be displayed under the “Generic” tab. -![Generic-tab](/14/umbraco-cms/fundamentals/data/images/Generic-tab.png) +![Generic-tab](images/Generic-tab.png) To manage the **Generic** tab on a **Document Type/Media Type**: @@ -61,4 +61,4 @@ To manage the **Generic** tab on a **Document Type/Media Type**: 2. Click **Add tab** and enter the **Name** for the tab. All existing groups and properties are added to the tab. 3. Go to the **Document Type/Media Type**, the **Generic** tab will now be replaced by the tab from the composition. - ![Composition Add Tab](../../../../10/umbraco-cms/fundamentals/data/images/Composition-add-tab.gif) + ![Composition Add Tab](images/Composition-add-tab.gif) diff --git a/15/umbraco-cms/fundamentals/data/creating-media/default-media-types.md b/15/umbraco-cms/fundamentals/data/creating-media/default-media-types.md index 4f762df58ea..e2a4d9fd098 100644 --- a/15/umbraco-cms/fundamentals/data/creating-media/default-media-types.md +++ b/15/umbraco-cms/fundamentals/data/creating-media/default-media-types.md @@ -42,7 +42,7 @@ The `UmbracoMediaArticle` media type has the following properties: * `umbracoExtension` - Label (string) * `umbracoBytes` - Label (bigint) -![MediaArticle](/14/umbraco-cms/fundamentals/data/creating-media/images/umbraco-media-article-media-type.png) +![MediaArticle](images/umbraco-media-article-media-type.png) ### UmbracoMediaAudio @@ -52,7 +52,7 @@ The `UmbracoMediaAudio` media type has the following properties: * `umbracoExtension` Label (string) * `umbracoBytes` Label (bigint) -![MediaAudio](/14/umbraco-cms/fundamentals/data/creating-media/images/umbraco-media-audio-media-type.png) +![MediaAudio](images/umbraco-media-audio-media-type.png) ### UmbracoMediaVectorGraphics @@ -62,7 +62,7 @@ The `UmbracoMediaVectorGraphics` media type has the following properties: * `umbracoExtension` Label (string) * `umbracoBytes` Label (bigint) -![MediaVectorGraphics](/14/umbraco-cms/fundamentals/data/creating-media/images/umbraco-media-vector-graphicsmedia-type.png) +![MediaVectorGraphics](images/umbraco-media-vector-graphicsmedia-type.png) ### UmbracoMediaVideo @@ -72,7 +72,7 @@ The `UmbracoMediaVideo` media type has the following properties: * `umbracoExtension` - Label (string) * `umbracoBytes` - Label (bigint) -![MediaVideo](/14/umbraco-cms/fundamentals/data/creating-media/images/umbraco-media-video-media-type.png) +![MediaVideo](images/umbraco-media-video-media-type.png) {% hint style="info" %} You can also create localization files for Media Types. You can read more about this in the [Document Type Localization](../defining-content/document-type-localization.md) article. diff --git a/15/umbraco-cms/fundamentals/data/defining-content/default-document-types.md b/15/umbraco-cms/fundamentals/data/defining-content/default-document-types.md index dbf520b95a0..c35e8106ff4 100644 --- a/15/umbraco-cms/fundamentals/data/defining-content/default-document-types.md +++ b/15/umbraco-cms/fundamentals/data/defining-content/default-document-types.md @@ -8,7 +8,7 @@ description: >- On this page, you will find the default Document Types in Umbraco. If you want to use these Document Types, you can create them in the Settings section. -![Create Document Type](/15/umbraco-cms/fundamentals/data/images/CreateDoctype.png) +![Create Document Type](../images/CreateDoctype.png) ## Document Type @@ -28,7 +28,7 @@ An Element Type is a Document Type *without a template* designed for reusabale a Element Types are not part of the Content tree and cannot render directly on the front end. When created, the **Is an Element Type** flag in the **Permissions** tab is automatically set to **True**. -![Element type](/15/umbraco-cms/fundamentals/data/images/element-type.png) +![Element type](../images/element-type.png) Use an Element Type when defining building blocks for complex page layouts, such as grid blocks or call-to-action sections. They are an essential part of modular content design. diff --git a/15/umbraco-cms/fundamentals/data/defining-content/document-type-localization.md b/15/umbraco-cms/fundamentals/data/defining-content/document-type-localization.md index 692f49618d1..317b0891eb2 100644 --- a/15/umbraco-cms/fundamentals/data/defining-content/document-type-localization.md +++ b/15/umbraco-cms/fundamentals/data/defining-content/document-type-localization.md @@ -78,7 +78,7 @@ The localizations are applied by using the syntax `#{area alias}_{key alias}`. * Under validation add `#properties_title-message`. {% hint style="info" %} -Property descriptions support [Umbraco Flavored Markdown](../../../reference/umbraco-flavored-markdown), which uses a different syntax (wrapped in brackets) to avoid conflicts with Markdown headers. +Property descriptions support [Umbraco Flavored Markdown](../../../reference/umbraco-flavored-markdown.md), which uses a different syntax (wrapped in brackets) to avoid conflicts with Markdown headers. {% endhint %} ![Applying localization to a property](../images/localization-document-type-editor-validation-v15.png) diff --git a/15/umbraco-cms/fundamentals/design/templates/razor-cheatsheet.md b/15/umbraco-cms/fundamentals/design/templates/razor-cheatsheet.md index 5eb3dd0c9e5..991507fe1eb 100644 --- a/15/umbraco-cms/fundamentals/design/templates/razor-cheatsheet.md +++ b/15/umbraco-cms/fundamentals/design/templates/razor-cheatsheet.md @@ -6,8 +6,6 @@ description: "All the code snippets you need to get a jump start on building tem The Razor Cheatsheet is a collection of common methods used for building templates and views in Umbraco CMS. -

Umbraco 11 - Razor Cheatsheet

- Get the Umbraco 11 Cheatsheet: [https://umbra.co/razorCheatsheet](https://umbra.co/razorCheatsheet) You can also find the [cheatsheet on GitHub](https://github.com/umbraco/UmbracoDocs/tree/RazorCheatSheet) where you can give feedback, contribute, or download the template used to _generate_ the sheet. diff --git a/15/umbraco-cms/reference/content-delivery-api/README.md b/15/umbraco-cms/reference/content-delivery-api/README.md index 24de01500dc..66809fb59a2 100644 --- a/15/umbraco-cms/reference/content-delivery-api/README.md +++ b/15/umbraco-cms/reference/content-delivery-api/README.md @@ -219,7 +219,7 @@ All content properties (including expanded properties) are part of the output by Property expansion and limiting can be used when querying for single and multiple content or media items. You can expand properties by adding an `expand` parameter to the query and limit them using the `fields` query parameter. -Refer to the [Property Expansion and Limiting](./property-expansion-and-limiting) article for an in-depth explanation of this feature. +Refer to the [Property Expansion and Limiting](property-expansion-and-limiting.md) article for an in-depth explanation of this feature. diff --git a/15/umbraco-cms/reference/content-delivery-api/protected-content-in-the-delivery-api/README.md b/15/umbraco-cms/reference/content-delivery-api/protected-content-in-the-delivery-api/README.md index c19cdea5343..f6862f78515 100644 --- a/15/umbraco-cms/reference/content-delivery-api/protected-content-in-the-delivery-api/README.md +++ b/15/umbraco-cms/reference/content-delivery-api/protected-content-in-the-delivery-api/README.md @@ -10,7 +10,7 @@ Umbraco allows for restricting access to content. Using the "Public access" feat By default, protected content is ignored by the Delivery API, and is never exposed through any API endpoints. However, by enabling member authorization in the Delivery API, protected content can be accessed by means of access tokens. {% hint style="info" %} -If you are not familiar with members in Umbraco, please read the [Members](../../../fundamentals/data/members) article. +If you are not familiar with members in Umbraco, please read the [Members](../../../fundamentals/data/members.md) article. {% endhint %} {% hint style="info" %} @@ -69,7 +69,7 @@ When changing the `MemberAuthorization` configuration, Umbraco must be restarted {% hint style="warning" %} When enabling or disabling member authentication, the `DeliveryApiContentIndex` must be rebuilt to correctly reflect the existing content protection state. -The index can be rebuilt from the [Examine Management dashboard](../../searching/examine/examine-management). +The index can be rebuilt from the [Examine Management dashboard](../../searching/examine/examine-management.md). {% endhint %} ## Server endpoints @@ -211,11 +211,11 @@ If everything works as expected, the request will yield a redirect to the login Do not worry about the URL construction and subsequent handling of the `code` parameter. This complexity is what the OpenId Connect client libraries handle for us. {% endhint %} -For more inspiration on using the built-in member authentication, check the [Members Registration and Login](../../../tutorials/members-registration-and-login) article. Here you will also learn how to create member sign-up functionality. +For more inspiration on using the built-in member authentication, check the [Members Registration and Login](../../../tutorials/members-registration-and-login.md) article. Here you will also learn how to create member sign-up functionality. ### How to use external identity providers -Umbraco allows adding external identity providers for both backoffice users and members. The process is documented in detail in the [External Login Providers](../../security/external-login-providers/) article. +Umbraco allows adding external identity providers for both backoffice users and members. The process is documented in detail in the [External Login Providers](../../security/external-login-providers.md) article. The Delivery API supports the same functionality. In the following we'll be using GitHub to test this. diff --git a/15/umbraco-cms/reference/management-api/external-access.md b/15/umbraco-cms/reference/management-api/external-access.md index e5d47ef3358..7c7aebc79e0 100644 --- a/15/umbraco-cms/reference/management-api/external-access.md +++ b/15/umbraco-cms/reference/management-api/external-access.md @@ -25,7 +25,7 @@ As shown, the access token should be used as a Bearer token when consuming the M Also, notice that access tokens have a fixed expiry. While you can keep issuing new tokens for the Client Credentials, please reuse tokens within their lifespan. This will be more performant and avoid flooding the Umbraco database with tokens. {% hint style="info" %} -The Management API does not support OpenID Connect Discovery. This is reserved for Members accessing protected content via the [Delivery API](../content-delivery-api/protected-content-in-the-delivery-api.md). +The Management API does not support OpenID Connect Discovery. This is reserved for Members accessing protected content via the [Delivery API](../content-delivery-api/protected-content-in-the-delivery-api/README.md). {% endhint %} The following code sample demonstrates how to consume the Management API by diff --git a/15/umbraco-cms/reference/management/using-services/contentservice.md b/15/umbraco-cms/reference/management/using-services/contentservice.md index 0a3cb387aec..986c38de8b5 100644 --- a/15/umbraco-cms/reference/management/using-services/contentservice.md +++ b/15/umbraco-cms/reference/management/using-services/contentservice.md @@ -49,7 +49,7 @@ demoProduct.SetCultureName("Microphone", "en-us"); // this will set the english demoProduct.SetCultureName("Mikrofon", "da"); // this will set the danish name ``` -For information on how to retrieve multilingual languages, see the [Retrieving languages](./retrieving-languages.md) article. +For information on how to retrieve multilingual languages, see the [Retrieving languages](localizationservice.md) article. ## Publishing content programmatically diff --git a/15/umbraco-cms/reference/scheduling.md b/15/umbraco-cms/reference/scheduling.md index 5c274ddf607..5ef2ce78f9a 100644 --- a/15/umbraco-cms/reference/scheduling.md +++ b/15/umbraco-cms/reference/scheduling.md @@ -257,7 +257,7 @@ Learn more about how to register dependencies in the [Dependency Injection](./us - Server Roles - see above for more discussion about Server roles -- MainDom - The `MainDom` lock ensures that only one instance of Umbraco is running at a time on a given machine. This ensures the integrity of certain files used by Umbraco. See [Host Synchronization](../fundamentals/setup/server-setup/load-balancing/azure-web-apps#host-synchronization) for more details. +- MainDom - The `MainDom` lock ensures that only one instance of Umbraco is running at a time on a given machine. This ensures the integrity of certain files used by Umbraco. See [Host Synchronization](../fundamentals/setup/server-setup/load-balancing/azure-web-apps.md#host-synchronization) for more details. - Runtime State - On a fresh install or when waiting for a database upgrade, Umbraco may be fully up and running yet. diff --git a/15/umbraco-cms/reference/templating/macros.md b/15/umbraco-cms/reference/templating/macros.md index 8892a2ac4c3..7ee641e3071 100644 --- a/15/umbraco-cms/reference/templating/macros.md +++ b/15/umbraco-cms/reference/templating/macros.md @@ -5,7 +5,7 @@ Macros and Partial View Macros have been removed with the release of Umbraco 14. -We recommend using using [Partial Views](../../fundamentals/design/partial-views.md) or [Blocks in the Rich Text Editor](../../fundamentals/backoffice/property-editors/built-in-umbraco-property-editors/rich-text-editor/rte-blocks.md) as a replacement. +We recommend using using [Partial Views](../../fundamentals/design/partial-views.md) or [Blocks in the Rich Text Editor](../../fundamentals/backoffice/property-editors/built-in-umbraco-property-editors/rich-text-editor-tinymce/blocks.md) as a replacement. Learn more about the decision for remove Macros in the official announcement: [Breaking change: Macros will be removed in Umbraco 14](https://github.com/umbraco/Announcements/issues/14). {% endhint %} diff --git a/15/umbraco-cms/reference/templating/mvc/partial-views.md b/15/umbraco-cms/reference/templating/mvc/partial-views.md index 2816c7e8cda..23e682f93b1 100644 --- a/15/umbraco-cms/reference/templating/mvc/partial-views.md +++ b/15/umbraco-cms/reference/templating/mvc/partial-views.md @@ -6,10 +6,6 @@ This section will show you how to use MVC Partial Views in Umbraco. Please note, this is documentation relating to the use of native MVC partial views {% endhint %} -## Overview - -Using Partial Views in Umbraco is exactly the same as using Partial Views in a normal MVC project. There is detailed documentation on the Internet about [creating and using MVC partial views](https://www.asp.net/mvc/videos/mvc-2/how-do-i/how-do-i-work-with-data-in-aspnet-mvc-partial-views) - Partial views allow you to reuse components between your views (templates). ## View Locations diff --git a/15/umbraco-cms/tutorials/creating-a-basic-website/adding-language-variants.md b/15/umbraco-cms/tutorials/creating-a-basic-website/adding-language-variants.md index f6251ff6866..bffaa198e04 100644 --- a/15/umbraco-cms/tutorials/creating-a-basic-website/adding-language-variants.md +++ b/15/umbraco-cms/tutorials/creating-a-basic-website/adding-language-variants.md @@ -87,7 +87,7 @@ To view the language variant on the browser, follow these steps: ![Viewing the Language Variant Link](images/viewing-langvariant-browser-v14.png) 5. Click on the link to view the new language node in the browser. -6. Alternatively, you can add the domain name to your localhost in the browser. For example: [http://localhost:xxxx/da/](http:/localhost:xxxx/da/) +6. Alternatively, you can add the domain name to your localhost in the browser. For example: `http://localhost:xxxx/da/`. ## More Information diff --git a/15/umbraco-cms/tutorials/creating-an-xml-site-map.md b/15/umbraco-cms/tutorials/creating-an-xml-site-map.md index 39d80a39daa..ebc2c478f24 100644 --- a/15/umbraco-cms/tutorials/creating-an-xml-site-map.md +++ b/15/umbraco-cms/tutorials/creating-an-xml-site-map.md @@ -65,7 +65,7 @@ In this first step of the tutorial, we will be creating a new Document Type for 11. Create a new XmlSiteMap page as a subpage to the root/home page in your Content tree. 12. Use the alias to add the XmlSiteMap Document Type to the "Excluded Document Type" list: `xmlSiteMap`. - ![View of the Content Tree after a Sitemap page has been added](../../../10/umbraco-cms/tutorials/images/v8/create-sitemap-page.png) + ![View of the Content Tree after a Sitemap page has been added](images/v8/create-sitemap-page.png) ## 2. Create an XmlSiteMapSettings Composition diff --git a/15/umbraco-cms/tutorials/editors-manual/getting-started-with-umbraco/umbraco-interface.md b/15/umbraco-cms/tutorials/editors-manual/getting-started-with-umbraco/umbraco-interface.md index f48c37ccc72..8d8f6fc656d 100644 --- a/15/umbraco-cms/tutorials/editors-manual/getting-started-with-umbraco/umbraco-interface.md +++ b/15/umbraco-cms/tutorials/editors-manual/getting-started-with-umbraco/umbraco-interface.md @@ -29,7 +29,7 @@ The following sections are available in the backoffice: * **Media** - allows to manage images and other media files. * **Settings** - allows to handle your meta data such as document types. * **Packages** - allows to manage and install packages. -* **Users** - allows to manage the users on the project. To learn more about users, see the [Users](../../../fundamentals/data/users.md) article. +* **Users** - allows to manage the users on the project. To learn more about users, see the [Users](../../../fundamentals/data/users/README.md) article. * **Members** - allows to handle the members of the project. If you want to learn more about Members, see the [Members](../../../fundamentals/data/members.md) article. * **Forms** - allows to create and manage your forms. * **Translation** - allows to manage dictionary items. diff --git a/15/umbraco-cms/tutorials/multilanguage-setup.md b/15/umbraco-cms/tutorials/multilanguage-setup.md index cedd325f4c1..97361664ac7 100644 --- a/15/umbraco-cms/tutorials/multilanguage-setup.md +++ b/15/umbraco-cms/tutorials/multilanguage-setup.md @@ -238,7 +238,7 @@ To use property editors with dictionary items: You can assign a Translator when you need a 1-1 translation of your site. For example, let's say we originally created a website in "Danish" which works from a `.dk` domain and now there is a need for an "English" site on a `.com` domain. In this case, it might be easier to copy the entire danish site and then provide access to a Translator who can then translate the site page by page. -Translators are used for the translation workflow. By default, Translators have permission to **Browse** and **Update** nodes. Someone must review the translations of site pages before publishing the nodes. For more information on managing User Groups, assigning access or User permissions, see the [Users](../fundamentals/data/users.md) article. +Translators are used for the translation workflow. By default, Translators have permission to **Browse** and **Update** nodes. Someone must review the translations of site pages before publishing the nodes. For more information on managing User Groups, assigning access or User permissions, see the [Users](../fundamentals/data/users/README.md) article. ## Viewing the Language Variant on the Browser diff --git a/15/umbraco-cms/tutorials/starter-kit/lessons/4-help-and-community.md b/15/umbraco-cms/tutorials/starter-kit/lessons/4-help-and-community.md index 99aec9a9a60..ab80abfb016 100644 --- a/15/umbraco-cms/tutorials/starter-kit/lessons/4-help-and-community.md +++ b/15/umbraco-cms/tutorials/starter-kit/lessons/4-help-and-community.md @@ -4,14 +4,13 @@ If you need some help, here's where to find it. ## Outcome -You're a registered user of the developer community website, known as "**Our**". +You're a registered user of the Umbraco Community. Maybe you have even signed up to attend a local meetup! ## Steps -1. Register on [our.umbraco.com](https://our.umbraco.com/member/Signup). -2. Search the [forum](https://our.umbraco.com/forum/), or browse the extensive [documentation](https://docs.umbraco.com/umbraco-cms/) if you prefer more structured learning. +2. Search the [forum](https://forum.umbraco.com/), or browse the extensive [documentation](https://docs.umbraco.com/umbraco-cms/) if you prefer more structured learning. 3. Please create a forum post if you don't know the best way to proceed. There are experienced community members online 24/7 so hopefully you won't have to wait long for a reply. We are always very excited to help out newcomers! 4. Check the home page of Our for any upcoming meetups near you. If there aren't any, keep an eye out for any online community hangouts happening soon. 5. Finally, do think about [contributing yourself](https://docs.umbraco.com/welcome/contribute/getting-started). Even if it's pointing out something in the documentation that could be made clearer, we'd love to hear from you. From ad9d071d232594c1964665e30634287d233a5202 Mon Sep 17 00:00:00 2001 From: sofietoft Date: Mon, 24 Mar 2025 11:13:25 +0100 Subject: [PATCH 2/2] one ore --- .../customizing/extending-overview/extension-types/menu.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/15/umbraco-cms/customizing/extending-overview/extension-types/menu.md b/15/umbraco-cms/customizing/extending-overview/extension-types/menu.md index 393e93d1b85..d61f8f00cd4 100644 --- a/15/umbraco-cms/customizing/extending-overview/extension-types/menu.md +++ b/15/umbraco-cms/customizing/extending-overview/extension-types/menu.md @@ -92,7 +92,7 @@ We can create the manifest using JSON in the `umbraco-package.json`. The manifest can also be written in TypeScript. -For this TypeScript example we used a [Backoffice Entry Point](../../extending-overview/extension-types/backoffice-entry-point) extension to register the manifests. +For this TypeScript example we used a [Backoffice Entry Point](../../extending-overview/extension-types/backoffice-entry-point.md) extension to register the manifests. {% code title="manifest.ts" overflow="wrap" lineNumbers="true" %} ```typescript