Шаблоны
Для шаблонов в Umbraco применяется концепция Razor Views из asp.net MVC - если вы уже знакомы с ней, то вы готовы создать ваше первый шаблон. Если нет, это быстрое и удобное руководство вам поможет.
Создание вашего первого шаблона
По умолчанию у всех типов документов устанавливается шаблон, но в случае, если вам нужно установить другой шаблон или вообще создать новый, вы можете легко сделать это.
Перейдите в секцию Settings и нажмите правой кнопкой мыши на каталоге templates, затем выберите create. Укажите имя шаблона и нажмите кнопку create. После чего откроется редактор шаблонов и отобразится разметка шаблона.

Установка шаблона для типа документа
Для того, чтобы использовать шаблон в документе, необходимо вначале разрешить его использование для контентного типа. Откройте тип документа, в котором хотите использовать шаблон, и выберите шаблон в "allowed templates"

Наследование мастер-шаблона
Шаблон может наследовать контент из мастер-шаблона, используя Layout возможность представлений asp.net. Допустим, имеется шаблон masterview, содержащий следующий html:
@inherits Umbraco.Web.Mvc.UmbracoTemplatePage
@{
Layout = null;
}
<!DOCTYPE html>
<html lang="en">
<body>
<h1>Hello world</h1>
@RenderBody()
</body>
</html>
Создаем новый шаблон textpage, и в редакторе шаблонов во вкладке Properties устанавливаем для него мастер-шаблон masterview:

Значение
Layoutв шаблоне textpage измениться как показано ниже:@inherits Umbraco.Web.Mvc.UmbracoTemplatePage
@{
Layout = "MasterView.cshtml";
}
<p>My content</p>
Когда будет генерироваться конечная страница, вместо
@renderBody() в мастер-шаблоне будет подставлена дочерняя страница и получится следующий результат:@inherits Umbraco.Web.Mvc.UmbracoTemplatePage
@{
Layout = null;
}
<!DOCTYPE html>
<html lang="en">
<body>
<h1>Hello world</h1>
<p>My content</p>
</body>
</html>
Секции шаблона
What's good to know, is that you are not limited to a single section. Секции шаблона позволяют дочерним шаблоном, которые наследуют разметку мастер-шаблона, вставлять HTML код напрямую в разметку мастер-шаблона. Например, дочерний шаблон вставляет код в тег
<head> мастер-шаблона.
Это можно сделать используя именованные секции. Добавьте именованную секцию в мастер-шаблон с помощью следующего кода:
@RenderSection("SectionName")
А именно, добавьте следующую именованную секцию в HTML тег
<head> мастер-шаблона:@inherits Umbraco.Web.Mvc.UmbracoTemplatePage
@{
Layout = null;
}
<html>
<head>
<title>Title</title>
@RenderSection("Head")
</head>
<body>
</body>
</html>
По умолчанию, когда определяется секция, она является обязательной. Чтобы сделать секцию необязательной, просто добавьте
required:false.@RenderSection("Head", required: false)
На дочерние страницы вызовите
@section Head {} а затем укажите разметку, которая будет вставлена в мастер-шаблон.Вставка частичных шаблонов
Другой способ многократно использовать HTML - это частичное шаблоны, которые являются маленькими многократно используемые представлениями, которые в свою очередь можно вставлять в другие представления.
Как и шаблоны, частичные представления создаются нажатием на "partial views" и выбором create, а далее есть возможность использовать готовые шаблоны.

Созданное частичное представление далее может быть вставлено в любой шаблон с помощью метода
@Html.Partial() , например, следующим образом:@inherits Umbraco.Web.Mvc.UmbracoTemplatePage
@{
Layout = "MasterView.cshtml";
}
<h1>My new page</h1>
@Html.Partial("a-new-view")