diff --git a/cms/pages.md b/cms/pages.md
index f2f83d58..384c6baa 100644
--- a/cms/pages.md
+++ b/cms/pages.md
@@ -103,7 +103,7 @@ For example, a URL like `/color/:color/make/:make*/edit` will match `/color/brow
## Dynamic pages
-Inside the [Twig section](themes#twig-markup-section) of a page template, you can use any [functions, filters, and tags provided by Winter](../markup). Any dynamic page requires **variables**. In Winter, variables may be prepared by the page, layout [PHP section](themes#php-code-section), or by [Components](../cms/components). In this article, we describe how to prepare variables in the PHP section.
+Inside the [Twig section](themes#twig-markup-section) of a page template, you can use any [functions, filters, and tags provided by Winter](../markup/templating/templating). Any dynamic page requires **variables**. In Winter, variables may be prepared by the page, layout [PHP section](themes#php-code-section), or by [Components](../cms/components). In this article, we describe how to prepare variables in the PHP section.
### Page execution life cycle
@@ -141,7 +141,7 @@ function onStart()
```
-The default variables and Twig extensions provided by Winter are described in the [Markup Guide](../markup). The sequence that the handlers are executed in is described by the [Dynamic layouts](layouts#dynamic-layouts) article.
+The default variables and Twig extensions provided by Winter are described in the [Markup Guide](../markup/templating/templating). The sequence that the handlers are executed in is described by the [Dynamic layouts](layouts#dynamic-layouts) article.
### Sending a custom response
@@ -165,7 +165,7 @@ public function onStart()
### Handling forms
-You can handle standard forms with handler methods defined in the page or layout [PHP section](themes#php-code-section) (handling the AJAX requests is explained in the [AJAX Framework](../ajax/introduction) article). Use the [`form_open()`](../markup#standard-form) function to define a form that refers to an event handler. Example:
+You can handle standard forms with handler methods defined in the page or layout [PHP section](themes#php-code-section) (handling the AJAX requests is explained in the [AJAX Framework](../ajax/introduction) article). Use the [`form_open()`](../markup/functions/form#form_open) function to define a form that refers to an event handler. Example:
```twig
{{ form_open({ request: 'onHandleForm' }) }}
diff --git a/cms/partials.md b/cms/partials.md
index 3bfffc79..d88d32d7 100644
--- a/cms/partials.md
+++ b/cms/partials.md
@@ -90,7 +90,7 @@ function onStart()
{{ hello }}
```
-The templating language provided by Winter is described in the [Markup Guide](../markup). The overall sequence the handlers are executed is described in the [Dynamic layouts](layouts#dynamic-layouts) article.
+The templating language provided by Winter is described in the [Markup Guide](../markup/templating/templating). The overall sequence the handlers are executed is described in the [Dynamic layouts](layouts#dynamic-layouts) article.
### Life cycle limitations
diff --git a/cms/themes.md b/cms/themes.md
index 5ff675b5..03ad8e8a 100644
--- a/cms/themes.md
+++ b/cms/themes.md
@@ -175,9 +175,9 @@ echo $this->foo;
### Twig markup section
-The Twig section defines the markup to be rendered by the template. In the Twig section, you can use functions, tags, and filters [provided by Winter](../markup), all the [native Twig features](https://twig.symfony.com/doc/2.x/), or those [provided by plugins](../plugin/registration#extending-twig). The content of the Twig section depends on the template type (page, layout, or partial). You can find more information about specific Twig objects further in the documentation.
+The Twig section defines the markup to be rendered by the template. In the Twig section, you can use functions, tags, and filters [provided by Winter](../markup/templating/templating), all the [native Twig features](https://twig.symfony.com/doc/2.x/), or those [provided by plugins](../plugin/registration#extending-twig). The content of the Twig section depends on the template type (page, layout, or partial). You can find more information about specific Twig objects further in the documentation.
-More information can be found [in the Markup guide](../markup).
+More information can be found [in the Markup guide](../markup/templating/templating).
## Theme Logging
@@ -332,7 +332,7 @@ In your templates:
#### Asset Compilation
-When using the [asset combiner](../markup/filter/theme#combiner-aliases), child theme assets are resolved first:
+When using the [asset combiner](../markup/filters/theme), child theme assets are resolved first:
```twig
{# If custom.css exists in child theme, it will be used; otherwise parent's version #}
diff --git a/services/html.md b/services/html.md
index 75f64b14..062c83e0 100644
--- a/services/html.md
+++ b/services/html.md
@@ -2,7 +2,7 @@
## Introduction
-Winter provides various helpful functions with the `Html` facade, useful for dealing with HTML and forms. While most of the examples will use the PHP language all of these features translate directly to [Twig markup](../markup) with a simple conversion.
+Winter provides various helpful functions with the `Html` facade, useful for dealing with HTML and forms. While most of the examples will use the PHP language all of these features translate directly to [Twig markup](../markup/templating/templating) with a simple conversion.
```php
// PHP
diff --git a/services/parser.md b/services/parser.md
index 3f17efa4..9a10de87 100644
--- a/services/parser.md
+++ b/services/parser.md
@@ -33,7 +33,7 @@ You may also use the `|md` filter for [parsing Markdown in your frontend markup]
## Twig template parser
-Twig is a simple but powerful template engine that parses HTML templates in to optimized PHP code, it the driving force behind [the frontend markup](../markup), [view content](../services/response-view#views) and [mail message content](../services/mail#message-content).
+Twig is a simple but powerful template engine that parses HTML templates in to optimized PHP code, it the driving force behind [the frontend markup](../markup/templating/templating), [view content](../services/response-view#views) and [mail message content](../services/mail#message-content).
The `Twig` facade is used for parsing Twig syntax, you may use the `Twig::parse` method to render Twig to HTML.
diff --git a/themes/development.md b/themes/development.md
index 5581b79d..f0957cf5 100644
--- a/themes/development.md
+++ b/themes/development.md
@@ -97,7 +97,7 @@ form:
> **NOTE:** When using a `fileupload` field in your theme, Winter will automatically add the field to an `attachOne` relationship. If you want to use multiple file uploads for a field, add the `multiple: true` option to the field definition. This will instead add the field to an `attachMany` relationship.
-The value can then be accessed inside any of the Theme templates using the [default page variable](../markup#default-variables) called `this.theme`.
+The value can then be accessed inside any of the Theme templates using the [default page variable](../markup/this/theme) called `this.theme`.
```twig
Welcome to {{ this.theme.site_name }}!